【问题标题】:hiding the parameters from the url in a new tab在新选项卡中隐藏 url 中的参数
【发布时间】:2017-09-13 04:39:36
【问题描述】:

此 Meteor 客户端代码在新选项卡中打开目标链接时显示参数 Param。怎么做才能使param 中的值从 url 中隐藏而不显示?谢谢

let windowRef = null;
let url = 'http://www.someurl/?';
let Param = {key1:val1,...}
Object.entries(Param).forEach(([key, value]) => url += key + '=' + value + '&');
windowRef = window.open(url.slice(0, -1), "myWindow");

编辑
windowRef.history.pushState("Removing query", "Title", "/"); 没有从新打开的标签中的网址中删除Param值。

【问题讨论】:

  • windowRef.history.pushState("Removing query", "Title", "/"); 应该可以工作。例如,它与此页面上的 window.history.pushState("Removing query", "Title", "/"); 一起使用。
  • 那没有做到。请参阅编辑。
  • 啊,是的,我最初认为这将是一个 CORS 问题,结果证明 pushState 也符合此条件。不幸的是,您似乎无法跨不同的域 pushState,因为 url 参数与脚本的执行相关。我将重新打开它,但老实说,我认为这里的答案是不可能的。

标签: javascript


【解决方案1】:
  1. 您可以尝试不带参数重定向到新网址。

当用户点击 url 时,您可以将此查询参数保存在本地存储或会话中。 然后你可以简单地不带参数重定向。

  1. 有一个由 Wistia 人员编写的脚本,可以满足您的需求:Link

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-07-16
    • 2012-02-26
    • 2016-11-11
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多