반응형
Next.js 는 client-side를 렌더링 하기 전에 SSR을 수행한는데, 이 때 window 전역객체가 로드 되지 않아서 localStorage is not defined 오류가 발생한다.
해결 방법들은 아래와 같다고 나오는데..
if (typeof window !== 'undefined') {
// Perform localStorage action
const item = localStorage.getItem('key');
}
useEffect(() => {
// Perform localStorage action
const item = localStorage.getItem('key')
}, [])
axiosInstance를 설정 할 때에는 두가지 방법 다 사용하기 어렵다.
이 땐 아래와 같이 작성하면 된다.
import axios from 'axios';
const axiosInstance = axios.create({
baseURL: `${process.env.NEXT_PUBLIC_API_URL}`,
headers: {
'Content-Type': 'application/json',
accept:'application/json',
},
});
axiosInstance.interceptors.request.use((config) => {
const token = localStorage.getItem('accessToken')
if(token) {
config.headers.Authorization = `Bearer ${token}`
}
return config
})
export default axiosInstance;
반응형
'Programming' 카테고리의 다른 글
Oauth2.0 + API Server(Laravel Sanctum) + 통합인증 구현 (1) | 2023.08.30 |
---|---|
[PHP Laravel] 대용량 트래픽 관련하여.. + Chat GPT (0) | 2023.04.02 |
[Next.js] Next.js Store redux (0) | 2023.03.23 |
[Next.js] next/image 외부 이미지 이용시 Error: Invalid src prop (0) | 2023.03.22 |
[Laravel] Response 관리 (0) | 2023.02.21 |