[英]localStorage is not defined in Nextjs, Redux and Typescript
[英]Reference Error: LocalStorage not defined - NextJS
我正在尝试从我的本地存储中获取访问和刷新令牌,但是每当我尝试时,它都会给我 500:Internal Server Error 并返回 LocalStorage 未定义。
我环顾四周,发现 LocalStorage 没有使用组件渲染,因此出现了问题。
我将如何获得代币并在这里使用它们?
const getRefreshToken = () => {
return localStorage.getItem("refresh_token") //this returns the error
}
const refreshAuthLogic = failedRequest => axios.post(`${BASE_URL}/token/refresh`, getRefreshToken()).then(tokenRefreshResponse => {
localStorage.setItem('access_token', tokenRefreshResponse.data.token); //maybe these will cause error too, I am not sure.
localStorage.setItem('refresh_token', tokenRefreshResponse.data.refresh_token);
failedRequest.response.config.headers['Authorization'] = 'Bearer ' + tokenRefreshResponse.data.access_token;
return Promise.resolve();
});
createAuthRefreshInterceptor(axios, refreshAuthLogic);
const getAccessToken = () => {
return localStorage.getItem("access_token") //this returns the error
}
const authAxios = axios.create({
baseURL: BASE_URL,
headers: {
Authorization: `Bearer ${getAccessToken()}`
}
})
authAxios.interceptors.response.use(createAuthRefreshInterceptor)
export {authAxios}
那么脚本中的 localStorage 访问错误检查在哪里?
var L='';
if(window.localStorage!==undefined){
try{ L=window.localStorage;} catch(e){ alert(e); }
} else { alert('LS Disabled'); }
通过适当的错误检查,您将确切知道问题所在,并且您不必在此处发布您的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.