2013-05-21 264 views
0

我有一个与Facebook Graph API集成的移动Web应用程序。移动Safari FB.login Oauth重定向错误

基本上,它使用JS SDK来获取有关查看用户的详细信息,然后可以使用它来呈现用户特定的内容。

我使用FB.login函数让用户登录到我的Facebook应用程序。这应该工作如下:在页面上

JS检测到用户没有登录到Facebook应用

用户提供按钮按一下火的FB.login

用户被重定向到Facebook页面授权应用程序和登录

用户被重定向回我的移动Web应用程序

JS网页上检测到用户登录到Facebook的应用程序,用户调查来自Graph的数据并呈现它。

这一切工作正常在Android,但重定向步骤不会在移动Safari工作

用户被提到一个的EntityRef,它看起来像内容类型的错误被发送到浏览器的XML,但其中内容包含非法字符:

第1列第49列出错:EntityRef:expected';'

这是产生错误的实际链接:

https://m.facebook.com/dialog/oauth?display=touch&domain=cgfoodscomp.herokuapp.com&scope=email&e2e=%7B%7D&app_id=135937919902029&locale=en_US&sdk=joey&client_id=135937919902029&redirect_uri=https%3A%2F%2Fs-static.ak.facebook.com%2Fconnect%2Fxd_arbiter.php%3Fversion%3D24%23cb%3Df3cf8ca2ac%26origin%3Dhttps%253A%252F%252Fcgfoodscomp.herokuapp.com%252Ff2d1c54b04%26domain%3Dcgfoodscomp.herokuapp.com%26relation%3Dopener%26frame%3Df35f8ac348&origin=2&response_type=token%2Csigned_request

当你在其他浏览器中打开这个,你使用Javascript的响应(因为它包含的脚本,我不会在这里发布标签),它包含对iPhone的引用:

iPhone版本* /(5 | 6)

我实际使用4版IOS。

有谁知道这东西是否应该在版本4中工作?

回答