我可以在使用 Vue-router 构建的 Vue 应用程序中刷新时清除引荐来源网址吗
Can I clear referrer upon refresh in Vue app built with Vue-router
网页重定向到 Vue 应用程序。这个 Vue 应用程序有几个页面,它使用 Vue-router。在初始化 Vue 应用程序时,我们 运行 一些基于引荐来源网址的逻辑。
然后用户在 Vue 应用程序的页面之间导航,并在某个时候决定刷新页面。在这种情况下,引荐来源网址仍然是前一页(为什么?) - 因此基于引荐来源网址的逻辑再次执行。这是有问题的,不应该发生。
那么 - 我怎样才能在 SPA 加载后摆脱这个引荐来源网址?或者最终当用户在 SPA 内导航时?
PS:这发生在 Chrome 和 Safari 上,但不会发生在 Firefox 上。至少在我的机器上。
修改referrer有很多技巧(How to manually set REFERER header in Javascript?)
然而,所有这些都远非完美。那是因为 referrer 是禁止的 headers 之一,它有意不能以编程方式修改 (https://developer.mozilla.org/en-US/docs/Glossary/Forbidden_header_name)
在你的情况下,我能想到的唯一想法是当你第一次 运行 你的 referer-related 逻辑时,将一些密钥放入 localStorage 或 sessionStorage,然后阻止它 运行如果此密钥已存储,请再次调用。
网页重定向到 Vue 应用程序。这个 Vue 应用程序有几个页面,它使用 Vue-router。在初始化 Vue 应用程序时,我们 运行 一些基于引荐来源网址的逻辑。
然后用户在 Vue 应用程序的页面之间导航,并在某个时候决定刷新页面。在这种情况下,引荐来源网址仍然是前一页(为什么?) - 因此基于引荐来源网址的逻辑再次执行。这是有问题的,不应该发生。
那么 - 我怎样才能在 SPA 加载后摆脱这个引荐来源网址?或者最终当用户在 SPA 内导航时?
PS:这发生在 Chrome 和 Safari 上,但不会发生在 Firefox 上。至少在我的机器上。
修改referrer有很多技巧(How to manually set REFERER header in Javascript?)
然而,所有这些都远非完美。那是因为 referrer 是禁止的 headers 之一,它有意不能以编程方式修改 (https://developer.mozilla.org/en-US/docs/Glossary/Forbidden_header_name)
在你的情况下,我能想到的唯一想法是当你第一次 运行 你的 referer-related 逻辑时,将一些密钥放入 localStorage 或 sessionStorage,然后阻止它 运行如果此密钥已存储,请再次调用。