프로그래밍/Node.js

[ Rest API ] sign in sign out 할때 HTTP method

L.Joey 2024. 1. 9. 20:40

 

[미니프로젝트] [1] 에서  access token을 생성 후에 local stroage 에 저장하는 경우

 

Rest API 의 규칙

  • GET 은 데이터를 획득
  • POST 는 데이터를 생성
  • Patch 는 데이터를 갱신
  • DELETE 는 그 데이터를 삭제

Rest API 의 규칙에 따르면 

  • sing in을 하면  데이터 jwt access token 을 생성 및 local storage에 저장 -> Post
    • 참고로 sing in은 기존 사용자의 "인증"을 수행하는 작업 - JWT 토큰은 영구적인 리소스가 아닌, 임시적인 인증 수단이여서 HTTP status code 는 200
  • sign out 을 하면 local storage 에서 jwt access token 이 삭제 -> Delete

 

Local storage 에 저장을 안하고 req 를 통해서  jwt access token을 front-end 에게 전달 한다면?

 

sign in -> jwt access token 을 생성 -> Post

  • jwt access token 을 저장하는 곳이 쿠키라면 

sign out ->  쿠키에서 jwt access token 삭제 -> Delete

 

 

하지만 sign out 을 하면 Get 이라는 주장도 아래에 존재

https://stackoverflow.com/questions/5868786/what-method-should-i-use-for-a-login-authentication-request

 

What method should I use for a login (authentication) request?

I would like to know which http method I should use when doing a login request, and why? Since this request creates an object (a user session) on the server, I think it should be POST, what do you ...

stackoverflow.com

  • sign in 을 하면 session 이 생성 -> Post
  • sign out 을 하면 session이 삭제 -> Delete

라는 주장에 

한 유저:
HTTP method Delete 는 서버에 있는 무언가를 지우는 것이지 session 과 같이 메모리를 사용하 것을 삭제하는 것에 적용하기에는 맞지 않다고 생각한다.
  • sign out 을 하면 -> Get 
  •