PHP位置头忽略散列
可能重复:PHP位置头忽略散列,php,header,facebook,location,Php,Header,Facebook,Location,可能重复: 我正在将Facebook登录整合到我的网站中。当Facebook使用code query参数重定向到我的站点时,在http://myurl.com/code=xxx#_=_ 然后,当我从该url重定向到我站点上的另一个url时: header('Location: http://myurl.com/home'); 它保留哈希标记,并以http://myurl.com/home#_=_ 有没有一种方法可以在没有散列的情况下重定向,或者如果有人熟悉Facebook,有没有一种方法可以
我正在将Facebook登录整合到我的网站中。当Facebook使用code query参数重定向到我的站点时,在
http://myurl.com/code=xxx#_=_
然后,当我从该url重定向到我站点上的另一个url时:
header('Location: http://myurl.com/home');
它保留哈希标记,并以http://myurl.com/home#_=_
有没有一种方法可以在没有散列的情况下重定向,或者如果有人熟悉Facebook,有没有一种方法可以让它首先停止添加散列?似乎JavaScript是删除散列的唯一方法,因为散列从未以任何方式发送到服务器。因此,我在空白页中添加了一个脚本:
window.location.hash = ''; window.location.href = "http://myurl.com"
这是目前的答案,但我会接受更好的答案。您可以在服务器端将PHP重定向到包含其自身哈希的URL。这就是我必须做的,一个使用backbone.js的ruby应用程序
PS-我指定了
重定向uri
,FB仍然添加了愚蠢的#=
字符串:/这是一篇针对facebook问题的帖子,您可以使用PHP标题设置它,只需包含哈希:标题('Location:http://myurl.com/home#');代码>