본문 바로가기

전체 글

(64)
TIL) http 통신 라이브러리: Axios http 통신에 사용되는 라이브러리는 대표적으로 fetch, axios가 있다. 둘 다 비슷하게 사용되는거 같다. axios란? promise 기반의 http 비동기 통신 라이브러리이다. get, delete, post, put, patch 등 http 매서드 지원한다. promise 기반이기 때문에 axios.get().then(result)과 같은 형식으로 작성이 가능하다. axios 장점 1. 커스텀 인스턴스 가능 axios.create({ baseURL: host }) 2. 인터셉터 response를 받기 전 공통된 로직을 마치 미들웨어 처럼 넣을 수 있음 -> 이를 이용하여 쉽게 에러 핸들링 가능 3. 쉬운 참조 axios.get().then(result=> console.log(result.d..
TIL) 토큰기반 인증 : JWT 토큰기반 인증을 쓰는 이유 - 세션기반인증 = 서버(혹은 DB)에 유저 정보를 담는 방식 -> 유저 정보를 매 번 확인하는 부담존재. 이를 클라이언트에 넘겨줄 순 없을까? 토큰을 사용하면 가능 - 클라이언트가 토큰을 갖고있으면 웹사이트 사용가능 - 대표적 토큰기반 인증 = JWT(JSON Web Token) JWT 구조 - Header + payload + signature로 구성 토큰기반 인증절차 - (Client -> server)로그인요청 - (server -> Client)JWT 토큰 전달 - (Client -> server)get 요청 - (server)토큰 확인 - (server -> Client)응답 JWT 사용방법(Javascript) 1. 라이브러리 const jwt = require('..
TIL) res.status 자주 사용하는 status 200 OK 성공했을 때 201 Created 새로 뭔가가 만들어졌을 때 400 Bad request 요청이 syntax 에러로 이해 불가능한 상태일 때 401 Unauthorized 유저의 승인이 필요한 request일 때 403 Forbidden 금지된 request 일 때 500 Internal Server Error 서버 내에서 작동 오류가 있을 때 참고 HTTP/1.1: Status Code Definitions part of Hypertext Transfer Protocol -- HTTP/1.1 RFC 2616 Fielding, et al. 10 Status Code Definitions Each Status-Code is described below, includi..