1. Cookie
- universal-cookie 모듈을 사용하여 브라우저의 쿠키 값을 key-value 형식으로 가져오고 지우는 커스텀 함수를 export 하였음
- oauth 로그인 성공 시에 로그인 email을 쿠키에 저장한 후 swr 모듈로 사용자 정보를 요청하여 컴포넌트간 전역적인 접근을 위해 사용될 것임
- 로그아웃 시 removeCookie() 함수로 email 값을 지워 관리할 것
import Cookies from "universal-cookie";
const cookies = new Cookies();
export const getCookie = (name) => {
return cookies.get(name);
}
export const removeCookie = (name) => {
return cookies.remove(name);
}
1. fetcherByEmail
- 사용자 정보를 서버에 요청할 경우 axios모듈로 get요청을 보내게 된다.
- email을 param으로 받아 url로 요청한 후 성공시 응답하는 then() 을 채워주었음
- useSWR에서 fetcher 로 쓰인다
import axios from 'axios';
const fetchByEmail = (email: string) =>
axios
.get(`/api/user/info?email=${email}`, {
withCredentials: true,
})
.then((response) => response.data.HCS.item.profile);
export default fetchByEmail;
출처 :
https://swr.vercel.app/ko
https://www.inflearn.com/course/%ED%81%B4%EB%A1%A0%EC%BD%94%EB%94%A9-%EC%8B%A4%EC%8B%9C%EA%B0%84%EC%B1%84%ED%8C%85/dashboard
https://github.com/ZeroCho/sleact/tree/master/alecture/pages
'Javascript > React' 카테고리의 다른 글
[React] Spring Boot with React 채팅 서버 : 5. components (0) | 2022.03.13 |
---|---|
[React] Spring Boot with React 채팅 서버 : 4. redux (0) | 2022.03.13 |
[React] Spring Boot with React 채팅 서버 : 2-2. typings (0) | 2022.03.10 |
[React] Spring Boot with React 채팅 서버 : 2-1. hooks (0) | 2022.03.09 |
[React] Spring Boot with React 채팅 서버 : 3. pages (0) | 2022.03.09 |