我通过Nuxt.js中的asyncData从后端获取数据:
async asyncData ({ app }) {
const { data: { testimonials } } = await axios('https://example.com/api/testimonials.json')
return {
testimonials
}
}
站点以通用模式配置-页面在服务器上呈现。但是客户可以拥有一个cookie,该cookie将对其进行身份验证,以接收来自CMS的私人内容。
这在客户端上导航时有效(通过浏览器中的cookie调用asyncData),但是第一次加载时(服务器的HTML)不会加载私有内容。
是否有一些方法可以在客户端上调用realod asyncData?我可以通过隐藏按钮或其他逻辑来调用它(例如,浏览器中有一个身份验证Cookie)。
答案 0 :(得分:0)
您最好在服务器端阅读cookie,并直接为您的用户提供正确的内容!
看看https://www.npmjs.com/package/cookie-universal-nuxt
您可以在nuxt路由中间件中或从商店中的nuxtServerInit中读取cookie。