본문 바로가기

Javascript/NestJS

(14)
JWT(JSON Web Token) 1.JWT(JSON Web Token) (1) 유저의 정보를 담은 객체를 암호화하여 문자열로 만들어 암호화된 키(accessToken)를 브라우저로 전달해 줌 (2) 브라우저 저장소에 저장해두었다가 유저 정보가 필요한 API를 사용할 때 API 요청과 함께 보내주면, 이를 백엔드에서 복호화해서 사용자를 식별한 후 접근이 가능하게 함 (3) 발급 받아온 서버에서 정상적으로 발급을 받았다는 증명하는 signature를 가지고 있음 (4) 사용자 정보를 DB를 열어보지 않고도 식별 할 수 있게 됨 2. JWT 토큰의 구성 (1) header: 토큰의 타입, 암호화 시 사용한 알고리즘 정보 (2) payload: 토큰 발행정보(발행자, 발행일, 만료일) (3) signature : 토큰의 비밀번호 3. JWT ..
DB Schema / ERD 1. DB Schema (1) 데이터 베이스 자료의 구조, 자료의 표현 방법, 자료 간의 관계를 형식 언어로 정의한 구조 (2) 데이터 관리 시스템(DBMS)이 주어진 설정에 따라 데이터베이스 스키마를 생성 (3) 데이터베이스 사용자가 자료를 저장, 조회, 삭제 변경 할 때 데이터베이스 스키마를 참조하여 명령을 수행 (4) 스키마의 3층 구조 외부 스키마(External Schema) : 프로그래머나 사용자의 입장에서 데이터베이스의 모습으로 조직의 일부분을 정의한 것 개념 스키마(Conceptual Schema) : 모든 응용 시스템과 사용자들이 필요로하는 데이터를 통합한 조직 전체의 데이터베이스 구조를 논리적으로 정의한 것 내부 스키마(Internal Schema) : 전체 데이터베이스의 물리적 저장 ..
TypeORM 1. TypeORM (1) TypeORM은 NodeJS, Browser, Cordova, PhoneGap, Ionic, React Native, NativeScript, Expo, TypeScript, JavaScript (ES5, ES6, ES7, ES8) 등등에서 지원되는 ORM (2) ORM은 객체지향프로그래밍을 사용하는 타입 시스템들 사이에서 데이터를 변환하기위한 프로그래밍 기술 2. Active Record pattern (1) 소프트웨어 엔지니어링에서 활성 레코드 패턴은 아키텍처 패턴 (2) 메모리 내 개체 데이터를 관계형 데이터베이스에 저장하는 소프트웨어에서 찾을 수 있음 (3) model 안의 모든 요청 방식을 정의할 수 있음 (4) model 방식을 통하여 저장, 삭제,객체 불러오기를 할..
NestJS 1. NestJS (1) NestJS는 TypeScript를 지원하는 Node.js의 서버 어플리케이션 프레임워크 (2) 효율적이고 확장 가능 (3) OOP(Object Oriented Programming) 객체지향 프로그래밍, FP(Functional Programming) 함수형 프로그래밍, FRP(Functional Reactive Programming) 비동기 함수 프로그래밍 (4) Node.js, Javascript 를 위한 모듈, 라이브러리들이 존재 했었지만 구조적(Architecture) 문제를 해결하지 못하여 등장 (5) Java의 Spring과 Python의 장고 같은 프레임워크 들이 있는데 Java의 Spring과 유사함 (6) Architecture를 통일하고 소통 비용을 절감함으로..