【问题标题】:API Error code: 100 facebook OpenGraphAPI 错误代码:100 facebook OpenGraph
【发布时间】:2013-02-24 12:27:46
【问题描述】:

我刚刚开始制作一个托管在 heroku 上的新 Facebook 应用程序,我还没有做任何更改,但对功能进行了一些测试,以习惯这些应用程序的工作方式。一切都很好,直到我尝试“发送消息按钮”,出现一个带有以下错误日志的对话框:

An error occurred. Please try later

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

我查看了一些相关的代码,并没有发现任何问题,但我很新,所以也许你们中的任何人都可以帮助我找出问题所在:

    $('#sendToFriends').click(function() {
          FB.ui(
            {
              method : 'send',
              link   : $(this).attr('data-url')
            },
            function (response) {
              // If response is null the user canceled the dialog
              if (response != null) {
                logResponse(response);
              }
            }
          );
        });

我认为$(this).attr('data-url'); 没有问题的原因是以下工作(发布到墙上按钮):

 $('#postToWall').click(function() {
      FB.ui(
        {
          method : 'feed',
          link   : $(this).attr('data-url')
        },
        function (response) {
          // If response is null the user canceled the dialog
          if (response != null) {
            logResponse(response);
          }
        }
      );
    });

  }

获取值的getUrl()函数是:

 public static function getUrl($path = '/') {
if (isset($_SERVER['HTTPS']) && ($_SERVER['HTTPS'] == 'on' || $_SERVER['HTTPS'] == 1)
  || isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https'
) {
  $protocol = 'https://';
}
else {
  $protocol = 'http://';
}

return $protocol . $_SERVER['HTTP_HOST'] . $path;

}

谁能帮帮我?我在 facebook 开发者论坛和 stackoverflow 上进行了一些搜索,但是虽然错误代码相同,但错误消息却不同。我认为这个问题来自 facebook,因为方法 feed 有效,而方法 send 无效。这两种方法都在 facebook sdk 中定义

注意:我使用的是最新的php sdk

【问题讨论】:

  • $(this).attr('data-url')的值是多少?
  • @BradM 我正在​​尝试找出这个问题,但我认为这不是问题所在是有原因的。我会编辑帖子,这是一个很长的答案。完成,编辑
  • 好的。 $('#sendToFriends')data-url 是什么?
  • 和另一个一样,是由函数getUrl();返回的,但无论如何,都是一样的值
  • 您的错误信息是无效参数link。您的data-url 无效。它可能是一个损坏的字符串、一个空字符串或只是数字。可以显示getUrl() 吗?

标签: php javascript facebook facebook-graph-api heroku


【解决方案1】:

我只使用发送对话框时遇到了这个问题。提要发布工作正常,这很奇怪。我在公共 URL 上使用动态查询字符串参数。

我通过强制 Facebook 尝试通过 FB UI 发送对话框发送 URL 来解决此问题。使用 FB API 来点击 graph.facebook.com,并将 id 参数中发布的 URL 和 scrape 参数设置为 true

像这样:

FB.api('https://graph.facebook.com/', 'post', {
    id: '[URL]',
    scrape: true
}, function(response) {
    FB.ui({
        method: 'send',
        name: '[name]',
        picture: '[Picture URL]',
        link: '[URL]',
        description: '[description]'
    });
});

我也用这个解决方案回答了同样的问题here

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-02-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-16
    • 2018-03-30
    • 2014-09-03
    • 1970-01-01
    相关资源
    最近更新 更多