Post 通过Javascript SDK发布注释

Post 通过Javascript SDK发布注释,post,comments,facebook-javascript-sdk,Post,Comments,Facebook Javascript Sdk,我试图使用JavaScript SDK从我的站点发布一条注释,然后允许在该注释之后立即发布一条注释。我在第一部分很成功。以下是一个相关的片段: alert('posting to path (' + path + ') with params (' + JSON.stringify(params) + ')'); FB.api(path, "post", params, function(response) { if (response.error) { alert(re

我试图使用JavaScript SDK从我的站点发布一条注释,然后允许在该注释之后立即发布一条注释。我在第一部分很成功。以下是一个相关的片段:

alert('posting to path (' + path + ') with params (' + JSON.stringify(params) + ')');
FB.api(path, "post", params, function(response) {
    if (response.error) {
        alert(response.error.type + ": " + response.error.message);
    } else {... do stuff ...}
请注意,我正在转储传递给检查的变量。结果如下:

http://www.facebook.com/permalink.php?story_fbid=285359141511345&id=100003217376622
http://www.facebook.com/notes/danja-garno/note-this-note/127723150678263
张贴便笺时:

posting to path (/100003217376622/notes) with params ({"access_token":"AAAChRmSu9s8BACFDhWCFnIS8R3OTZCSxZAyL4hLbAQxGUrn0t4ksZC5CS62qlLtAIconOKCreAUpaorzOZCHkxp2DlTfcc2c8vOY5MOLPdHMqdfWMu2V","subject":"Note #1","message":"My note"})
posting to path (/124528970997681/comments) with params ({"access_token":"AAAChRmSu9s8BACFDhWCFnIS8R3OTZCSxZAyL4hLbAQxGUrn0t4ksZC5CS62qlLtAIconOKCreAUpaorzOZCHkxp2DlTfcc2c8vOY5MOLPdHMqdfWMu2V","message":"Comment on Note # 1"})
这很好,在“/notes”前面的数字是我的个人资料id

然而,我随后尝试对该注释发表评论,并以以下内容结束

在该便笺上发表评论时:

posting to path (/100003217376622/notes) with params ({"access_token":"AAAChRmSu9s8BACFDhWCFnIS8R3OTZCSxZAyL4hLbAQxGUrn0t4ksZC5CS62qlLtAIconOKCreAUpaorzOZCHkxp2DlTfcc2c8vOY5MOLPdHMqdfWMu2V","subject":"Note #1","message":"My note"})
posting to path (/124528970997681/comments) with params ({"access_token":"AAAChRmSu9s8BACFDhWCFnIS8R3OTZCSxZAyL4hLbAQxGUrn0t4ksZC5CS62qlLtAIconOKCreAUpaorzOZCHkxp2DlTfcc2c8vOY5MOLPdHMqdfWMu2V","message":"Comment on Note # 1"})
这将导致一个错误,如下所示:

OAuthException: (#200) Cannot access object_id: 124528970997681
“/comments”前面的数字实际上是便笺的id,因为当我将鼠标悬停在墙上的便笺链接上时,我会看到以下URL:,它确实会引导我找到便笺

知道我为什么会犯这个错误吗

==================================更新=================================

今天早上,我发布了一个链接而不是一个注释,然后通过相同的表单和代码成功发布了一条评论

现在,我确实注意到了两件可能提供线索的事情。首先,链接的永久链接如下所示:

http://www.facebook.com/permalink.php?story_fbid=285359141511345&id=100003217376622
http://www.facebook.com/notes/danja-garno/note-this-note/127723150678263
注释的永久链接如下所示:

http://www.facebook.com/permalink.php?story_fbid=285359141511345&id=100003217376622
http://www.facebook.com/notes/danja-garno/note-this-note/127723150678263
同样,当我通过Graph API URL直接访问这些对象时,会得到两种不同的响应

我使用此URL获得了对链接的有效响应

但是,当我尝试使用此URL以相同的方式访问便笺时


它返回的只是“假”。这是怎么回事?

我终于有时间尝试一下了


我可以发布一条注释,然后通过Graph API向该注释发布注释。我仍然认为这是一个时间问题,因为图表在所有需要交叉保存的地方交叉保存注释的速度都很慢(而图表的数据库可能是最后一个要复制的数据存储)。因此,我建议将评论放在等待队列中,以便稍后处理(可能需要1分钟)

我终于有时间尝试一下了


我可以发布一条注释,然后通过Graph API向该注释发布注释。我仍然认为这是一个时间问题,因为图表在所有需要交叉保存的地方交叉保存注释的速度都很慢(而图表的数据库可能是最后一个要复制的数据存储)。因此,我建议将评论放在等待队列中,以便稍后处理(可能需要1分钟)

好问题!你以后可以在便笺上发表评论吗?@DMCS=>如果我去我的墙,当然可以。但我的应用程序只给用户“在最后一篇文章上发表评论”的机会,一旦你离开页面,这种能力就消失了。它的结构允许你在我的应用程序中,在你的帖子之后立即添加评论,仅此而已。好吧,那么这显然是一个时间问题,你不能立即在新帖子上添加评论。我建议您将该评论排队等待稍后处理(比如1分钟),然后看看是否有效。调整队列的等待时间,直到获得最佳性能。我做了一些测试,这不是时间问题。问题是我无法访问note对象。通过图形URL无法访问注释这一事实支持了这一点。请看上面问题中的更新。好问题!你以后可以在便笺上发表评论吗?@DMCS=>如果我去我的墙,当然可以。但我的应用程序只给用户“在最后一篇文章上发表评论”的机会,一旦你离开页面,这种能力就消失了。它的结构允许你在我的应用程序中,在你的帖子之后立即添加评论,仅此而已。好吧,那么这显然是一个时间问题,你不能立即在新帖子上添加评论。我建议您将该评论排队等待稍后处理(比如1分钟),然后看看是否有效。调整队列的等待时间,直到获得最佳性能。我做了一些测试,这不是时间问题。问题是我无法访问note对象。通过图形URL无法访问注释这一事实支持了这一点。请参阅上面问题中的更新。