2012-10-09 173 views
6

我得到以下错误(“错误:HTTP状态码:400”),现在已更新至截至昨天10/9的Facebook SDK 3.1。但是,就连接Facebook而言,所有功能都是完全有效的,每次我在我的应用程序上启动一个Facebook会话时,我都会看到这条错误消息。我见过一些人对此发表评论,但我无法从他们那里判断这是否会成为一个真正的问题。有谁知道这是否会导致问题?如果是这样,如何解决它?谢谢!Facebook SDK 3.1 - 错误:HTTP状态码:400

+0

我在过去2周内(2012年9月/ 10月)出现了这种错误,如果您得到详细的错误描述,您会发现大部分时间都是OAuth错误,无效请求,“不支持的获取请求”,一切似乎表明这是一个FB问题,因为相同的代码在随机时间运行良好,而无需更改任何参数或用户设置,并保持相同的用户登录。 – Dado

+0

谢谢,这就是为什么我也在想 – jac300

+0

我们有一个错误报告这里(https://developers.facebook.com/bugs/115149961972168)。这是在SDK发布后不久修复的服务器端错误。这不应该再根据bug报告中的讨论重新制作。 –

回答

6

在3.1 SDK发布后,Facebook刚刚解决了原始问题。

但是有些人仍然有问题,如果你有这个问题,你应该检查登录流程,然后看看Facebook的例子,之后,如果你仍然有问题,这可能是一个解决方案的提示。

当我没有授权获取我的信息时,我收到了400错误。奇怪的是,我得到一个accessToken,甚至是一个有效的登录(这是因为我构建了我的代码,根据令人愉快的示例提供帮助,并在会话状态打开时执行了有效的登录)。

FBSessionState只打开一秒钟,然后它变为关闭400错误。

使用iOS6本地登录时,您在获取权限时会收到警报,然后手机会记住24小时内的选择。但是,如果用户登录到Facebook主页,然后删除应用程序的权限,手机将无法识别用户已经删除了24小时的权限,因为它记得手机已经询问并批准了它(在24小时内),无论你是否重新安装应用程序。

经过几个小时的调试,我发现这一点,因为我允许应用程序从iOS的设置,但我无法发布,并且因为我删除了来自Facebook隐私的许可,并且警报不会再显示在那里我无能为力,只能通过调试工具手动授予我许可权,或等待24小时,以便我可以再次接受Facebook许可警报。