node.js - Nuxt - 服务器端的 Axios 请求不发送引荐来源网址

标签 node.js vue.js axios nuxt.js

故事

我的后端应用程序为我的网站页面提供 SEO 信息。这些信息之一是 OpenGraph 元标记,例如 og:type 和 og:url。 og:url 值由 API 通过 HTTP“Referer” header 给出。

我现在在做什么

我正在使用 Axios 模块来发出我的请求。 通过页面中的 asyncData 函数,我可以获得 req 变量及其 headers.referer 属性,这就是我想要的,如下所示:

// page.vue
async asyncData({ app, req }) {
  app.$axios.setHeader('Referer', req.headers.referer);
}

问题

如果我在索引页面,比方说,然后我单击指向动态页面的链接,我收到错误,因为 reqasyncData 上不可用导航时起作用,我想

问题

如何动态获取我的请求引用,以通过 Axios 请求发送客户端和服务器端请求?

有关版本的信息:
  • nuxt:1.4.2
  • @nuxtjs/axios:5.3.1

最佳答案

你可以这样做:

async asyncData({ app, req }) {
  const referrer = process.client ? window.document.referrer :  req.headers.referer
  app.$axios.setHeader('Referer', referrer)
}

关于node.js - Nuxt - 服务器端的 Axios 请求不发送引荐来源网址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54206729/

相关文章:

javascript - VueJS 方法返回 "Native Code"消息

javascript - 如何在提交 POST 请求后通过 GET 请求呈现我的最新数据

node.js - 如何将外部socket.io客户端代码链接到HTML页面?

node.js - NodeJs 要求、自定义模块、路径、

javascript - (crypto.js) 类型错误 : Data must be string or buffer

vue.js - Vuex - 计算属性 "name"已分配给但它没有 setter

Vue.js 自定义指令 : $refs is empty

javascript - 不要在 api 上设置 POST 请求,得到 406 Not Acceptable

javascript - 如何在 nuxt 中使用 Axios 模块和 vuejs 设置 header

node.js - 可能未处理 CastError : Cast to date failed for value "function now() { [native code] } on Mongoose