Skip to content

Commit f5e21eb

Browse files
committed
♻️ refactor : Modify to store tokens in cookies
- Modify token to be stored in cookies instead of local storage Related Issue: YJU-OKURA#102
1 parent 895e478 commit f5e21eb

File tree

2 files changed

+7
-11
lines changed

2 files changed

+7
-11
lines changed

src/api/apiUtils.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
1+
import Cookies from 'js-cookie';
12
import BASE_URLS from './baseUrl';
23
import HTTP_STATUS from './httpStatus';
34

45
async function fetchWithInterceptors(url: string, options: RequestInit) {
56
let response = await fetch(url, options);
67

78
if (response.status === HTTP_STATUS.UNAUTHORIZED) {
8-
const refreshToken = localStorage.getItem('refresh_token');
9+
const refreshToken = Cookies.get('refresh_token');
910
const refreshResponse = await fetch(
1011
`${BASE_URLS.gin}/auth/google/refresh-token`,
1112
{
@@ -20,7 +21,7 @@ async function fetchWithInterceptors(url: string, options: RequestInit) {
2021
if (refreshResponse.ok) {
2122
const data = await refreshResponse.json();
2223
const newToken = data.data.access_token;
23-
localStorage.setItem('access_token', newToken);
24+
Cookies.set('access_token', newToken);
2425
options.headers = {
2526
...options.headers,
2627
Authorization: `Bearer ${newToken}`,
@@ -47,7 +48,7 @@ const req = async (
4748
body: BodyInit | object | undefined = undefined
4849
) => {
4950
const headers = new Headers();
50-
const token = localStorage.getItem('access_token');
51+
const token = Cookies.get('access_token');
5152
if (token) {
5253
headers.append('Authorization', `Bearer ${token}`);
5354
}

src/app/googleLogin/page.tsx

Lines changed: 3 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2,19 +2,16 @@
22
import {useEffect} from 'react';
33
import Image from 'next/image';
44
import {useRouter, useSearchParams} from 'next/navigation';
5+
import Cookies from 'js-cookie';
56
import {useSetRecoilState} from 'recoil';
67
import userState from '@/src/recoil/atoms/userState';
7-
import accessTokenState from '@/src/recoil/atoms/accessTokenState';
8-
import refreshTokenState from '@/src/recoil/atoms/refreshTokenState';
98
import postGoogleLogin from '@/src/api/auth/postGoogleLogin';
109
import gifs from '@/public/gif';
1110
import '@/src/styles/variable.css';
1211

1312
const Page = () => {
1413
const code: string | null = useSearchParams().get('code');
1514
const setUser = useSetRecoilState(userState);
16-
const setAccessToken = useSetRecoilState(accessTokenState);
17-
const setRefreshToken = useSetRecoilState(refreshTokenState);
1815
const router = useRouter();
1916
useEffect(() => {
2017
if (code) {
@@ -23,10 +20,8 @@ const Page = () => {
2320
setUser(res.user);
2421
}
2522
if (res) {
26-
setAccessToken({access_token: res.access_token});
27-
setRefreshToken({refresh_token: res.refresh_token});
28-
window.localStorage.setItem('access_token', res.access_token);
29-
window.localStorage.setItem('refresh_token', res.refresh_token);
23+
Cookies.set('access_token', res.access_token);
24+
Cookies.set('refresh_token', res.refresh_token);
3025
}
3126
router.push('/classes');
3227
});

0 commit comments

Comments
 (0)