【问题标题】:Crazy Facebook UI Dialog Error疯狂的 Facebook UI 对话框错误
【发布时间】:2012-05-03 13:25:57
【问题描述】:

所以我找不到任何理由看到以下行为,如果有人有一些见解,将不胜感激。

基本上,我使用 JavaScript SDK 中的 FB.UI 向带有链接的用户发送消息。链接以Guid 结尾,例如http://www.domainname.com/register/33a1a0ae-e0fe-4eb6-9bf9-146d5492e3d6。这有时有效,但偶尔会因来自 FB 的通用 500 错误而失败。

我退出了HTTP POST 请求并找到了可以重新创建的解决方案,遗憾的是我无法共享访问代码以允许 SO 用户实际运行它(我替换了所有敏感参数)。以下是两个相同的请求,它们仅在 Guid 中有所不同。第一个每次都成功,第二个每次都失败。我有很多 Guids 正在这样做,如果不可靠的话。

https://www.facebook.com/dialog/send?access_token=XXX&api_key=XXX&app_id=XXX&channel=http%3A%2F%2Fstatic.ak.facebook.com%2Fconnect%2Fxd_arbiter.php%3Fversion%3D5%23cb %3Df2cb8f5c1ca0402%26origin%3Dhttp%253A%252F%252Fwww.domainname.com%252Ff350c0fd55d5764%26domain%3Dwww.domainname.com%26relation%3Dparent.parent&channel_url=http%3A%2F%2Fstatic.ak.facebook.com%2Fconnect%2Fxd_arbiter .php%3Fversion%3D5%23cb%3Df11a615f3b71192%26origin%3Dhttp%253A%252F%252Fwww.domainname.com%252Ff350c0fd55d5764%26domain%3Dwww.domainname.com%26relation%3Dparent.parent&description=test&display=iframe&link=http%3A%2F %2Fwww.domainname.com%2Fregister%2F**33a1a0ae-e0fe-4eb6-9bf9-146d5492e3d6**&locale=en_US&name=test&next=http%3A%2F%2Fstatic.ak.facebook.com%2Fconnect%2Fxd_arbiter.php%3Fversion %3D5%23cb%3df22e359d88321ce%26origin%3dhttp%253a%252f%252fww.domainname.com%252ff350c0fd55d5764%26domain%3dwww.domainname.com%26 relation%3dparent%26frame%3df33c13cd4ecc156%26result%3d%2522xxresulttokx x%2522&picture = http%3a %2F%2Fwww.domainname.com%2Fimg.gif&sdk=joey&to=XXX

https://www.facebook.com/dialog/send?access_token=XXX&api_key=XXX&app_id=XXX&channel=http%3A%2F%2Fstatic.ak.facebook.com%2Fconnect%2Fxd_arbiter.php%3Fversion%3D5%23cb %3Df2cb8f5c1ca0402%26origin%3Dhttp%253A%252F%252Fwww.domainname.com%252Ff350c0fd55d5764%26domain%3Dwww.domainname.com%26relation%3Dparent.parent&channel_url=http%3A%2F%2Fstatic.ak.facebook.com%2Fconnect%2Fxd_arbiter .php%3Fversion%3D5%23cb%3Df11a615f3b71192%26origin%3Dhttp%253A%252F%252Fwww.domainname.com%252Ff350c0fd55d5764%26domain%3Dwww.domainname.com%26relation%3Dparent.parent&description=test&display=iframe&link=http%3A%2F %2Fwww.domainname.com%2FFregister%2F**dd171262-dbcc-43c3-b9d1-e37dc53e3520**&locale=en_US&name=test&next=http%3A%2F%2Fstatic.ak.facebook.com%2Fconnect%2Fxd_arbiter.php%3Fversion %3D5%23cb%3df22e359d88321ce%260rigin%3dhttp%253a%252f%252fww.domainname.com%252ff350c0fd55d5764%26domain%3dwww.domainname.com%26 relation%3dparent%26frame%3df33c13cd4ecc156%26result%3d%2522xxresulttokxx%2522和图片= http%3 A%2F%2Fwww.domainname.com%2Fimg.gif&sdk=joey&to=XXX

【问题讨论】:

  • 你能分享一个有效的网址和一个无效的网址吗?
  • @Nitzan Tomer,这些链接是正确的。如果您将“XXX”替换为有效的 access_token 和应用信息,它应该是可测试的。
  • 好吧,“dp,aomname”令人困惑。无论如何,我测试了两个网址(www.domainname.com/Fregister/dd171262-dbcc-43c3-b9d1-e37dc53e3520 和 www.domainname.com /register/33a1a0ae-e0fe-4eb6-9bf9-146d5492e3d6) 并且都返回:404 - 未找到
  • 这些都应该是 www.domainname.com,我已将应用程序放在临时站点上,因此如果您可以将域替换为 laine.webhop.org 并将链接参数替换为 laine。 webhop.org/tresendas/register/GUID。用上面的每个 guid 替换 GUID。谢谢!!!!
  • URL laine.webhop.org/tresendas/register/…laine.webhop.org/tresendas/register/… 导致服务器错误(“/Tresendas”应用程序中的服务器错误)。也许您可以只发布有效的网址,而不是我自己尝试找出网址?

标签: facebook facebook-graph-api fb.ui


【解决方案1】:

我测试了这两个网址:

使用 js sdk 发送方法,确实第一个 url 导致来自 facebook 的 500,而第一个设法发送它。 我不明白为什么第一个 UID 会触发错误,而第二个不会。

我一直要求提供此类 url 的工作示例的原因是,当您使用 facebook 共享 url 时,他们会废弃该 url(除非它已经在他们的缓存中)并提取该 url 的元数据,以便提要故事可以组成。

由于 Facebook 无法访问我尝试的网址,因此它可能会以某种方式触发该错误。 如果我尝试这个网址: http://laine.webhop.org/tresendas/register/33a1a0ae-e0fe-4eb6-9bf9-146d5492e3d6 然后它可以工作并且我没有收到服务器错误,即使它与我尝试的第一个 url 具有相同的 UID。

我建议您尝试使用 facebook 可访问的 url,如果您仍然收到某些 UID 的错误,那么您可能应该打开一个新的错误报告。

【讨论】:

  • 你能在非工作示例中测试其他东西吗?只需将 guid 中的最后一个字符更改为 5 之类的其他字符。然后它就可以工作了,这两个都不应该解决。
  • 我并不认为这并不奇怪,我的意思是当 facebook 可以访问 url(不是 404)时,这个无法解释的错误可能不会发生,也许这个错误只发生在他们尝试回退到它无法到达的时候。如果您使用有效的 url 尝试失败的 UID,它是否有效?
  • 你是 100% 正确的。修复了该页面上的错误,以使该页面的加载工作完美。我得到了一致的结果。谢谢!
猜你喜欢
  • 2011-02-19
  • 2018-05-04
  • 1970-01-01
  • 2011-01-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-02-13
  • 1970-01-01
相关资源
最近更新 更多