我最近开始涉足Facebook Graph api。我已经使用名称空间'Test'定义了一个自定义操作'Start',这是我用来发布到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}});
我也在图浏览器上尝试了相同的请求,它每次都有效。
我做错了吗?任何帮助都会很棒。
提前致谢。
答案 0 :(得分:0)
你所得到的错误在问题中并不明确,即:
我有理由确定使用localhost
对象网址不起作用,您应该使用Facebook的抓取工具可访问的域进行测试 - 抓取工具需要读取页面及其上的元标记来创建Facebook图表中的对象
答案 1 :(得分:0)
修正了问题。我同时执行了两个post请求,而且这个请求一直都在失败,所以我觉得这个请求有问题。
FB.api('/me/Test:start .... );
FB.api('/me/feed .... );
我不知道问题是什么,但当我将这两个请求分开时。一切都按预期工作。