2

我创建了一个用于阅读文章的简单应用程序,它使用以下代码创建帖子:

  FB.api('/me/[NAMESPACE]:read&article=http://example.com/article.html','post', function(response) {

                 if (!response) { 
                      alert('Error Occurred I got no response with ' + $pageURL);
                 }
                 else if (response.error) {
                      alert('Error Occurred' + response.responseText + " " + response.error.responseText);
                 } else {
                     alert('Post was successful! Action ID: ' + response.id);
                     var idToDeleteLater = response.id;
                 }
         });

而且我希望能够检查该页面是否曾被访问过,因此我将能够禁止为同一篇文章进一步创建帖子。

但为了做到这一点,我需要获取文章 ID,而我无法使用 response.id 命令获取它,因为该命令只给了我单个帖子的 ID。

我不想使用给定的方法:

  function postUnreadSpecific()
  {
  var postId = idToDeleteLater;

  FB.api(postId, 'delete', function(response) {
  if (!response || response.error) {
    alert('Error occured');
  } else {
    alert('Post was deleted');
  }
});

因为阅读是通过按钮完成的(与烹饪教程中的相同),所以每当我按下按钮时,都会创建具有不同 ID 的新帖子,我显然不想手动输入它们。

因此,底线是,如何获取页面 ID(而不是带有 response.id 的帖子 ID),并进行检查,如果之前访问过该页面,则禁用新帖子的创建......

4

1 回答 1

1

Facebook Open Graph 操作可以选择是唯一的。此设置位于隐藏在“高级设置”链接下的“配置故事附件”下的动作创建页面上。在那里,您会找到一个名为“唯一操作”的切换开关,可以将其设置为“仅允许一次”。这确保了每个用户只有一个“动作-对象”对。

请注意,您需要在设置操作时执行此操作,因为操作在获得批准后无法编辑。

示例操作

于 2012-04-29T22:13:23.067 回答