강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

highjune님의 프로필 이미지
highjune

작성한 질문수

스프링 MVC 2편 - 백엔드 웹 개발 활용 기술

정리

api 통신일 경우, 쿠키, 세션 관련

작성

·

1.3K

0

안녕하세요. 밑에 질문글 보고 하나 더 올려도 될까요 ㅎㅎ

 

질문글에서 영한님의 답변에 'API로 로그인에 성공하면 응답 값으로 JSESSIONID  쿠키가 넘어옵니다. API 호출시 이 쿠키를 서버에 보내주시면 됩니다' 라고 하셨는데요

 

2가지가 궁금합니다. 

1. 서블릿 제공 HttpSession으로 강의에서 구현한 것처럼 하면 JSESSIONID  쿠키 넘어간다는 것을 말씀하신 것 맞죠?

 

2. 클라이언트 쪽(SPA 종류) 에서 API호출시 쿠키를 서버에 보낸다 -> SPA를 잘 몰라서 모르겠지만, 웹 브라우저에서는 자동으로 매번 쿠키를 보내는데, API로 구현할 때는 별도로 의도적으로 쿠키를 서버에 보내야 하는 것 맞죠?

 

감사합니다.

답변 1

1

안녕하세요, highjune 님. 공식 서포터즈 codesweaver 입니다.
.
1. 네 맞습니다.

2. API 작업시 인증에 대한 처리는 보통 토큰값을 이용합니다. JWT 구현 방식일 경우 accessToken, refreshToken 이라고 하는 두가지 토큰을 발급받는데 (로그인 정보가 정확한 경우), 이후 API 요청시 클라이언트는 accessToken을 HTTP 헤더의 인증(Authorization) 필드에 추가하여 보냅니다. 그러면 API 서버에서는 이 토큰이 유효한지 확인하고, 누구에게 발급된 토큰인지도 확인하여 적절한 데이터를 응답하게 됩니다. 서버에서의 구현에 따라 일반 쿠키를 전달하여 세션을 조회하게 설계하는것도 가능합니다. 보통은 토큰 방식을 이용하는것이 많은것 같습니다.
.
감사합니다.

highjune님의 프로필 이미지
highjune
질문자

감사합니다!

highjune님의 프로필 이미지
highjune

작성한 질문수

질문하기