我用nuxt js开发了一个项目。我在下面遇到这样的问题。
现在,问题是在服务器端呈现,我无法获取浏览器cookie。
我该怎么处理这个问题?
答案 0 :(得分:0)
您可以将所需信息存储在本地存储和存储中。 cookie,例如。
import Cookie from 'js-cookie'
....
setCookie(state, value) {
if (process.client) {
localStorage.setItem('cookie', value);
}
Cookie.set('cookie', value)
}
阅读它(cookie自动包含在请求中)
getCookie(context, req) {
// if server
if (req) {
if (req.headers.cookie) {
const cookie = req.headers.cookie.split(';').find(...)
}
}
// if client
if (process.client) {
const cookie = localStorage.getItem('cookie');
}
}
并删除
removeCookie(state) {
if (process.client) {
localStorage.removeItem('cookie');
}
Cookie.remove('cookie');
}
答案 1 :(得分:0)
首先,您可以从nuxt req
获得res
(请求)和context
(响应)。
您可以通过
设置cookie// client side
document.cookie = 'sessionId=some-id;';
document.cookie = 'userId=awesome-id;';
// or server side
res.setHeader('Set-Cookie', ['sessionId=some-id;', 'userId=awesome-id;']);