【问题标题】:500 internal server error when posting发布时出现 500 内部服务器错误
【发布时间】:2014-01-30 19:48:37
【问题描述】:

在过去的几天里,我在尝试发布到 facebook 时开始遇到问题...

有关我的项目的信息,我使用 Unity3D 和 Prime31 for iOS 的社交网络插件。

最初,用户需要登录,然后确认允许该应用在用户的时间轴上发布。

这没有任何缺陷,我得到的回应是一切正常,直到我尝试发布到时间线。然后我得到一个 500 内部服务器错误。

这是 facebook api 给出的错误:

response error: 500 internal server error
response text:

Response Headers:
    ACCESS-CONTROL-ALLOW-ORIGIN: *
    EXPIRES: Sat, 01 Jan 2000 00:00:00 GMT
    CONTENT-TYPE: application/json; charset=UTF-8
    WWW-AUTHENTICATE: OAuth "Facebook Platform" "unknown_error" "An unknown error has occurred."
    X-FB-REV: 1102018
    CONNECTION: keep-alive
    PRAGMA: no-cache
    CACHE-CONTROL: no-store
    DATE: Thu, 30 Jan 2014 15:07:54 GMT
    CONTENT-LENGTH: 87
    X-FB-DEBUG: q453qH5ianbIOyeof0X0Ah0PDpAlkxW9+OxLBusy2do=

我用来发布到 facebook 的功能是:

Facebook.instance.postMessageWithLinkAndLinkToImage(Message, URL, URLName, ImageURL, Caption, completionHandler);

我确实确保用户已正确登录并且已授予发布权限。

在此问题开始发生之前和之后,插件和我处理插件的代码没有任何代码更改,因此很明显我遗漏了一些东西。这是 Facebook 服务器的错吗?我已经联系了 Prime31,但他们说他们不对 Facebook api 的响应负责。

尝试向 Facebook 发帖时出现 500 内部服务器错误的原因是什么?

编辑:似乎 postMessageWithLinkAndLinkToImage 归结为:

graphRequest( "me/feed", HTTPVerb.POST, parameters, completionHandler );

【问题讨论】:

    标签: facebook prime31


    【解决方案1】:

    500 意味着您在发出请求时基本上会使 Facebook 服务器崩溃。因此,导致这种情况发生的 Facebook API 肯定发生了一些变化。

    我会检查插件代码并查看它在哪里进行 API 调用,然后您可以使用 curl 之类的东西手动进行 API 调用。如果失败,请联系 Facebook 支持,看看他们能否为您提供正确的 API 文档。

    【讨论】:

    • 终于找到了问题的根源......碰巧我们给参数“link”提供了一个无效的链接,一旦修复了一切都可以正常运行。非常感谢!