0

我最近开始涉足 Facebook Graph api。我已经使用命名空间“测试”定义了一个自定义操作“开始”,这是我用来发布到 Facebook 的代码。

FB.api('/me/Test:start',{ article : currentURL, message: $j('.subject-content h2 a').html()}, 'post', function(response) {

                                  if (!response || response.error) {
                                       console.log('Error  '+response.error.message);
                                  }
                                  else {
                                       console.log('Message was posted! (post id: ' + response.id + ")");
                                  }
                             });

由于某种原因,该帖子第一次失败,但在随后的尝试中,该帖子成功了。

这是我从萤火虫捕获的请求。

1)

        access_token    xxxxx
        article https://testserver:8080/xxx
        callback    FB._callbacks.__gcb2
        message testpage
        method  post
        pretty  0
        sdk joey   

2)

    access_token    yyyy
    article https://testserver:8080/xxx
    callback    FB._callbacks.__gcb6
    message testpage
    method  post
    pretty  0
    sdk joey

如您所见,调用完全相同。第一次收到这个回复

/**/ FB._callbacks.__gcb4({"error":{"message":"An unknown error has occurred.","type":"OAuthException","code":1}});

我也在图形浏览器上尝试了相同的请求,它每次都有效。

难道我做错了什么?任何帮助都会很棒。

提前致谢。

4

2 回答 2

0

问题中并不清楚您遇到的错误,即:

我有理由确定使用localhost对象 URL 是行不通的,您应该使用 Facebook 爬虫可访问的域进行测试 - 爬虫需要读取页面及其上的元标记才能在 Facebook 的图表中创建对象

于 2012-09-06T23:37:05.100 回答
0

修复了问题。我同时执行了两个发布请求,而这个总是失败,所以我认为这个请求有问题。

FB.api('/me/Test:start .... );
FB.api('/me/feed .... );

我不知道问题是什么,但是当我将这两个请求分开时。一切都按预期工作。

于 2012-09-07T23:12:17.790 回答