codestates / codestates/WeGreen

[Error-Log : 이지영] #17 - Logout 요청 후 cookie가 삭제되지 않음

Open
#113 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
0
Forks
4
PR merge metrics
No merged PRs in 30d

Description

### **어떤 에러인가요?**

- 로그아웃 요청 후 클라이언트에서 cookie가 삭제되지 않음

### **에러 메시지**
Screenshot 2022-01-07 at 10 44 47 AM
로그아웃 요청 후에도 accessToken cookie가 여전히 남아있는 것을 확인할 수 있음

### **에러 핸들링 방법**

- clearCookie('accessToken')가 작동하지 않는 것인가 해서 cookie('accessToken', '')으로 시도해봄 -> 여전히 안됨
- cookie 옵션들을 처음 accessToken cookie를 보낼 때와 똑같이 세팅해봄 -> 여전히 안됨
- 네트워크 탭을 열어 Response에 Set-Cookie 헤더가 제대로 있는지 확인 -> 헤더는 문제 없음
- cookie 설정이 제대로 되었던 login 요청/응답 코드와 비교 -> 차이점 발견! 프론트에서 logout 요청을 보낼 때 바디와 헤더가 잘못 설정되어 있었음

수정전
```javascript
export const requestLogout = () => {
return axios
.post(
`${process.env.REACT_APP_API_URL}/users/logout`,
{
'Content-Type': 'application/json',
withCredentials: true,
}
)
.then((result) => console.log(result));
};
```

수정후
```javascript
export const requestLogout = () => {
return axios
.post(
`${process.env.REACT_APP_API_URL}/users/logout`,
{}, // <- body
{
'Content-Type': 'application/json',
withCredentials: true,
}
)
.then((result) => console.log(result));
};
```

### **에러 핸들링을 위해 참고한 레퍼런스 링크**

- [Express doesn't set a cookie](https://stackoverflow.com/questions/36824106/express-doesnt-set-a-cookie)

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.