怎样在 Nuxt 处于服务端时获取 Cookie

做一个项目,有一个页面要在 AsyncData 方法内获取后端数据,但要携带 Cookie,于是我在 Axios 的拦截器中设置,但我发现无法获取 Cookie(用的是 cookie-universal-nuxt,支持在服务端获取 Cookie)。但我用 console 打印时(处于服务端渲染时)发现确实有$cookies这个对象,但就是无法读取,值为 undefined

代码如下:


export default function(app) {
  app.$axios.onRequest(config => {
    if (process.client) {
      const accessToken = window.$nuxt.$cookies.get('xxxx'); // xxxx 为业务 Cookie 名
      accessToken && (config.headers.authorization = accessToken);
    } else {
      console.log(app); // 包含 $cookies
      console.log(app.$cookies);// undefined
    }
    return config;
  });
}
阅读 9.2k
1 个回答

你看看服务器设置的cookie是不是只限定了服务端使用。。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏