-4

我已经链接了一个站点,该站点使用参数“access_token”将浏览器重定向到另一台服务器,例如

http://somedomain.com/blank.html#access_token=sadf2342dsdfsd

在页面重定向到其他服务器之前,如何从 URL 中获取此参数?

4

3 回答 3

1

我认为您正在尝试在客户端浏览器离开您的网站后访问其地址栏?

iframe除非您在 an 中打开站点,然后使用 javascript 访问子框架,否则这是不可能的。

您可以通过更改链接的目标轻松地做到这一点,例如

改变这个:

<a href="http://thewebsite.com/">Go to website</a>

对此:

<iframe name="tokenFrame" id="tokenFrame" width=1 height=1 frameborder=0> </iframe>
<a href="http://thewebsite.com/" target="tokenFrame">Don't go to website</a>

然后在 javascript 中,在页面更改为带有令牌的页面后:

var url = document.getElementById("tokenFrame").src

或类似的东西来获取位置,例如

var frame = document.getElementById("tokenFrame");
var url = frame.top.location.href;

或者

var url = top.tokenFrame.location.href;

最后解析URL获取值

于 2012-04-14T22:15:23.530 回答
1

我不太清楚你的问题。虽然我对从 URL 获取 access_token 参数的方式有一些建议。

只要您知道 url,您就可以分解字符串并获取 access_token。它可能看起来像这样:

echo end( explode('#', 'http://somedomain.com/blank.html#access_token=sadf2342dsdfsd'));

如果您直接在该站点,则可以使用 javascript 获取哈希:

document.location.hash.substr(1)
于 2012-04-14T21:58:05.473 回答
0

在javascript中,您可以像这样获取它的值

window.location.hash.replace('#access_token=','')
于 2012-04-14T22:01:32.337 回答