Facebook FB.ui 发送对话框间歇性地返回无效链接错误

标签 facebook facebook-graph-api facebook-javascript-sdk

这已经运行了一个多星期。

FB.ui({
  method: 'send',
  to: connectionid,
  name: subject,
  picture: staticurl + 'images/logoformysite.png',
  link: homeurl + '/' + username + '/something=' + var1 +'&somethingelse=' + encodeURI(var2) + '&evenmore=' + encodeURI(var3),
  description: invitemessage,
});

上周我最初遇到了一个错误,如果 URL 在 Facebook 域内,Facebook 会阻止它。我修复了这个问题,现在图片和链接都不属于 Facebook 域,而是来 self 的网站。但这从今天开始发生,没有任何改变。它是间歇性的。

An error occurred. Please try again later.

API Error Code: 100 API Error Description: Invalid parameter Error Message: 'link' is invalid.

目前还不清楚为什么它有时有效而其他时候无效,即使我将它发送给同一个用户。想知道我是否错过了公告。但我希望它至少会一直失败,但事实并非如此。


更新: 我不确定如何在页面上全局设置我在对话框中设置的链接。它会向邮件的收件人发送错误的链接。看看上面的例子如何在新的开放图世界中工作会很有帮助。

2013 年 8 月 12 日回答

问题围绕着我们的 url 是动态的并且每次都需要强制缓存。我现在对“https://developers.facebook.com/tools/debug/og/object”进行 ajax 调用以刷新它,然后启动发送对话框。

最佳答案

我遇到了同样的问题,自上周起就停止工作了。

这是我的解决方案:

转到 Facebook debugger并添加您的网址。 单击“调试”并修复 Facebook 显示的所有警告。

要修复我的问题,我必须在我的页面中添加 og.url 元标记。该值应与您要共享的值完全相同(无重定向)。 然后 Facebook 向我发送了这个通知(警报):

Your app, XXX, is now compliant with the Stream post URL security migration. No further action is required.

尝试再次与 FB.ui 分享您的链接,现在您的帖子应该会自动显示您的 og 值。

注意: Facebook October breaking change将自动使用那些 og 元数据而不是自定义 FB.ui 参数,因此您现在可以激活重大更改以准备好并从您的代码中删除名称/图片/描述。

更新: 即使我上面提到的正确实现,这个问题也可能再次发生。

如果是您的情况,那是因为您必须强制 Facebook“抓取”您的页面。当您使用 Facebook 对象调试器或在您的时间线/私有(private)消息上复制/粘贴链接时,Facebook 会自动完成此过程。如果您使用 JavaScript SDK,则必须要求 Facebook 索引和缓存您的页面。

你不会在与 JavaScript SDK 相关的 Facebook 文档中找到这个(或者你很幸运)所以为了节省你所有的时间我发现这个令人难以置信的问题(记住 Facebook 只说你的链接无效)你可以在 this page 上找到更多详细信息.

我尝试使用 Graph API 强制我新创建的页面被 Facebook 抓取,如果它对你有用,那你就幸运了。第二种方法没有提到但产生相同的结果是向 Facebook Object Debugger 页面发送请求并在 URL 中添加您的页面链接(例如 https://developers.facebook.com/tools/debug/og/object?q=YourPageUrlHere).通过这样做,Facebook 这次将抓取您的页面,现在您可以与 Facebook API 共享您的链接,现在一切正常。

关于Facebook FB.ui 发送对话框间歇性地返回无效链接错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17982183/

相关文章:

facebook-graph-api - Facebook 应用 : post to page now failing with "An unknown error has occurred"/OAuthException

php - 向 Facebook API 发布状态,帮助 :(

video - 如何使用 JavaScript SDK 分享视频?

php - Facebook Authenticate 如何让我识别用户身份?

php - Facebook 应用程序 - 如何计算发件人邀请的好友数量?

iphone - 使用iOS Facebook-SDK 3.1获取电子邮件和个人资料图片

ios - 单例不返回任何图像

facebook - 通过 Facebook 的身份验证进行集成测试

facebook - PHP curl CURLOPT_IPRESOLVE

api - Facebook API OAuthException : “An unexpected error has occurred. Please retry your request later” when trying to retrieve a Page-specific access token