javascript - 隐藏URL参数并读取它们

标签 javascript html angularjs url parameters

有没有办法隐藏URL参数,然后用代码读取隐藏的参数?例如我的页面中有这个: “example.com/transaction.html?price=10”。

我尝试使用 Base64 进行编码,但它无法按预期工作(编码有效,解码无效),因此我想隐藏 Price=10 或 transaction.html?price=10。

我听说 AngularJS 可以隐藏参数,但是它可以读取“隐藏”参数吗?它是如何工作的?

提前致谢!

function getUrlVar() {
    var result = {};
    var location = window.location.href.split('#');
    var parts = location[0].replace(/[?&]+([^=&]+)=([^&]*)/gi,function(m,key,value) {
        result [key] = value;
    });
    return result;
}

最佳答案

如果你不想在地址栏中向用户显示查询参数,你可以使用Javascript轻松实现,或者jquery也需要为此切换到Angular。

你可以做的就是不要使用 <a href = ....> </a>获取该查询的数据,该查询会将用户重定向到链接:www.something.com?price=10相反,您可以使用按钮作为

<button type="button" onclick="fetch()">Fetch Data</button>

在你的Javascript文件中你可以创建一个GET or POST通过这种方式请求,这些你想要隐藏的参数将不会被显示出来,只是这些参数会在后台发送到服务器,而不会改变你的地址。

为了做到这一点GET Request您可以做一些事情,例如假设您正在从文本字段发送数据:

$("#button").click(function() {
      $.ajax({
          type: "POST",
          url: "www.something.com/",
          data: {
            price: $("#price")
          },
          success: function(data) {
            // do something with the data you received}
          });
      })
<input type=text id="price" />
<button id="button">Send</button>

现在您在后台获取了数据,而无需在地址栏中向用户显示参数。

关于javascript - 隐藏URL参数并读取它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44666648/

相关文章:

javascript函数体显示的变量与函数变量相同

javascript - 带有angularJS javascript的动态背景图像

angularjs - UI Bootstrap Popover : change width

javascript - 页脚悬停和滚动问题

javascript - 如何使用meteor-jsdoc忽略.meteor目录中的代码文档

javascript - 如何在单个响应列中排列 "prices",点数取决于文本的长度

javascript - 在 JavaScript 中选择目录路径

javascript - 谷歌地图圈子不是圆的

javascript - 根据子元素应用 css 类

javascript - Angular 2 : Binding and Callbacks