SSR Nuxt应用中间件是否可以调用本地存储?
Is it possible to call local storage in SSR Nuxt application middleware?
我有一个带有这个中间件的 Nuxt 应用程序
middleware(context) {
const token = context.route.query.token;
if (!token) {
const result = await context.$api.campaignNewShare.createNewShare();
context.redirect({'name': 'campaigns-new', 'query': {token: result.data.token}});
local.storage.setKey(token, new DateTime().getTime());
}
},
我需要将令牌存储到本地存储,但我不确定是否可行或安全。
不,那是不可能的。 localStorage 是浏览器部分,但在 SSR 上,代码在服务器端计算。使用 cookie 是一个很好的解决方案。
我推荐使用这个模块:https://github.com/nuxt-community/universal-storage-module
我有一个带有这个中间件的 Nuxt 应用程序
middleware(context) {
const token = context.route.query.token;
if (!token) {
const result = await context.$api.campaignNewShare.createNewShare();
context.redirect({'name': 'campaigns-new', 'query': {token: result.data.token}});
local.storage.setKey(token, new DateTime().getTime());
}
},
我需要将令牌存储到本地存储,但我不确定是否可行或安全。
不,那是不可能的。 localStorage 是浏览器部分,但在 SSR 上,代码在服务器端计算。使用 cookie 是一个很好的解决方案。
我推荐使用这个模块:https://github.com/nuxt-community/universal-storage-module