【问题标题】:Should the asyncData option be used when using universal mode in nuxt?在nuxt中使用通用模式时是否应该使用asyncData选项?
【发布时间】:2020-07-17 03:50:46
【问题描述】:

我目前正在使用 nuxt 进行一个项目。

那么,auth有问题。

每当我使用中间件移动页面时,我都会从cookie中取出token,放入axios默认token中。

因为我使用的是通用模式,所以这个流程有问题。

由于移动页面时运行客户端的中间件,刷新时运行服务器的中间件,因此token分别存储在客户端的axios默认头和服务器的axios默认头中。

所以刷新后我无法从客户端获取数据。

这是使用 asyncData 解决的,但是否应该将所有数据都带到 asyncData 中?

【问题讨论】:

    标签: single-page-application nuxt.js server-side-rendering


    【解决方案1】:

    也许 Nuxt 的新 fetch() 钩子 > v2.12 可以解决您的问题?在这里查看:https://nuxtjs.org/api/pages-fetch/

    【讨论】:

      【解决方案2】:

      您仍然可以访问服务器中间件中的 cookie,而无需在客户端。 cookie 实际上在您的请求标头中。

      中间件看起来像这样:

      要访问请求标头,您可以破坏 nuxt 上下文

       export default function({ req }){
          console.log(req.headers.cookie);
       }
      

      【讨论】:

        猜你喜欢
        • 2021-05-19
        • 2022-11-11
        • 1970-01-01
        • 2019-03-21
        • 1970-01-01
        • 1970-01-01
        • 2017-12-23
        • 2021-06-23
        • 1970-01-01
        相关资源
        最近更新 更多