반응형
HTTP의 특징 2개
1. 요청-응답
요청이 있어야 응답을 하게 된다. 메시지 형식으로 요청을 보내고 같은 형식으로 응답을 한다.
2. Stateless
HTTP 개별 통신은 모두 독립적이어서 지난 통신의 결과를 보존하지 않는다.
로그인을 성공한다. 그리고 다른 요청을 보내면 상태를 저장하지 않는 stateless 성질 때문에 이전에 로그인 했던 기록이 없다.
그래서 지금 접속한 사람이 인가된 사용자인지 알 수 없기 때문에 원래대로라면 새로운 요청을 할 때마다 로그인을 해야 한다.
stateless <-> statefull
더보기


stateless <-> statefull
statefull
통신의 결과가 보존된다. ex) 실시간채팅

stateless
이전 통신에 대한 결과를 기억하지 못하기 때문에 통신을 할 때마다 이전 통신에 대한것을 계속 누적해서 전달해줘야 한다.

stateless는 통신결과를 보존하지 않기 때문에 statefull에 비해 처리가 빠르고 확장이 쉽다.
토큰
그런데 매번 로그인 작업을 하는 것은 비효율적이기 때문에 통신을 할 때마다 필요한 모든 정보를 담아서 새 요청과 함께 보내는 방식을 이용하는데 이때 사용하는 방식중 하나가 토큰이다.
토큰을 이용한 로그인 과정
로그인페이지에서 아이디와 비밀번호를 넣고 서버에 로그인 요청을 한다.
(서버는 회원이 아니면 회원가입 페이지를 보낸다->정보가 데이터베이스에 저장된다)
서버는 들어온 아이디와 비밀번호를 가지고 우리 서버의 유저가 맞는지 확인 후 맞다면 서버 전용 토큰을 클라이언트에게 보내준다
프론트엔드에서 이 토큰을 웹 스토리지에 저장해서 다음 요청때 같이 붙여서 보낼수 있도록 한다.
반응형
'Web' 카테고리의 다른 글
웹서버(Web server)와 WAS(Web Application Server) (0) | 2022.09.26 |
---|---|
HTTP 2 | HTTP Request/Response 메시지 구조와 Request 메서드 (0) | 2022.07.15 |
개발자도구 Network패널의 기능 (0) | 2022.06.26 |
CSS | display: inline, inline-block, block (0) | 2022.06.22 |
CSS | position 속성 - relative, absolute, fixed (0) | 2022.06.22 |