日期:2014-05-16  浏览次数:20340 次

将URL中的参数去掉,如何做啊
从一个地方重定向到 http://192.136.25.66?identiy=xxxxx 的时候,我首先在66这个网站内部对identiy 做了处理,然后显示66的业务界面。但之后,我希望将地址栏中的identiy=xxxxx去掉。这个怎么做到啊
------解决方案--------------------
截取字符串,把?后的所有字符去掉
------解决方案--------------------
location.replace(location.href.replace(location.search, ""));
------解决方案--------------------
引用:
Quote: 引用:

Quote: 引用:

截取字符串,把?后的所有字符去掉


这个方法不可。因为我们的页面是无刷新的。

晕,那你不要使用get请求啊

你还可以在后台把数据处理完后把地址重定向一下就好了
------解决方案--------------------
你可以向66网站post数据,而不是地址栏传值的方式

如果你不想让别人看到某些敏感参数,也可以对参数进行加密处理,当然是在地址栏传值的前提下
------解决方案--------------------
把请求数据放入到到cookie中,通过cookie来传递参数,这样参数就不会显示在浏览器上,也可以更好的复用
------解决方案--------------------
引用:
Quote: 引用:

Quote: 引用:

Quote: 引用:

Quote: 引用:

截取字符串,把?后的所有字符去掉


这个方法不可。因为我们的页面是无刷新的。

晕,那你不要使用get请求啊

你还可以在后台把数据处理完后把地址重定向一下就好了


重定向就刷新页面了

我说的是后台重定向,你的页面请求以后,然后在后台拦截请求把response里面的地址修改一下
------解决方案--------------------
html5中可以使用history api实现:
var state={
  title = "new title",
  url = "new url"
};
history.push(state,"new title","new url");

不过,可惜的是,貌似仅有少量浏览器支持。
至于其它的办法,还没有想到