FE단에서 서버가 보낸 응답 헤더에서 토큰을 전달받기
res.headers.Authorization
=> 잘못된 방식 axios.defaults.withCredentials = true; // withCredentials 전역 설정
axios
.post(`${URL}/login`, data)
.then((res) => {
if (res.status === 200) {
let accessToken = res.headers.Authorization; // 응답헤더에서 토큰 받기
let refreshToken = res.headers.refresh; // 응답헤더에서 토큰 받기
console.log('refresh 토큰 :', refreshToken);
console.log('access 토큰 :', accessToken);
setLocalStorage('access_token', accessToken); // 토큰 localStorage에 저장
axios.defaults.headers.common[
'Authorization'
] = `Bearer ${accessToken}`;
navigate('/');
}
})
.catch((error) => console.log(error));
response.headers['content-type']
['']
대괄호표기법let accessToken = res.headers['authorization'];
let refreshToken = res.headers['refresh'];
.
key값으로 가져오기 res.headers.authorization
let accessToken = res.headers.authorization; // 응답헤더에서 토큰 받기
let refreshToken = res.headers.refresh; // 응답헤더에서
axios.defaults.withCredentials = true; // withCredentials 전역 설정
axios
.post(`${URL}/login`, data)
.then((res) => {
if (res.status === 200) {
// 모든 헤더 이름은 소문자
let accessToken = res.headers['authorization']; // 응답헤더에서 토큰 받기
let refreshToken = res.headers['refresh']; // 응답헤더에서 토큰 받기
console.log('access 토큰 :', accessToken);
console.log('refresh 토큰 :', refreshToken);
setLocalStorage('access_token', accessToken); // 토큰 localStorage에 저장
axios.defaults.headers.common[
'Authorization'
] = `Bearer ${accessToken}`;
navigate('/');
}
})
소문자였다니,, 잘 알고 삽질하지 말자,,