2012-05-05 24 views
1

我正在Facebook开放图形API第一次拍摄。我做了一个自定义的动作类型和对象类型。对于这个问题,我将它们命名为“myaction”和“myobject”。通过身份验证的用户获取开放图形操作ID

function postAction(){ 
    FB.api(
     '/me/appnamespace:myaction?myobject=http://domain.com/page.php', 
     'post', 
     function(response) { 
      if (!response || response.error) { 
       alert('Error: ' + response.error.type + ' - ' + response.error.message); 
      } else { 
       //alert('Like was successful! Action ID: ' + response.id); 
       var likedId = response.id; 
       alert('Action was successful! Action ID: ' + response.id + ' (var = ' + likedId + ')'); 
      } 
     } 
    ); 
} 

This works。该操作将发布到用户的时间轴上。

但是,如果该用户想要在不同的会话中从我的网站删除该操作(或多个操作)?有没有办法从用户查询自定义操作并显示它们?我可以使用数据库,并存储actionId,但是当用户已删除在Facebook上

行动删除操作的代码将是会发生冲突:

function deleteAction(){ 
    FB.api(
     'xxxxxxxxxx', // Here the Action ID must be inserted 
     'delete', 
     function(response) { 
      alert('action deleted') 
     } 
    ); 
} 

编辑:

这适用于从特定页面获取的动作(对象):

function getAction(){ 
    FB.api(
     '/me/appnamespace:myaction?myobject=http://domain.com/page.php', 
     'get', 
     function(response) { 
      if (!response || response.error) { 
       alert('Error: ' + response.error.type + ' - ' + response.error.message); 
       console.log(response); 
      } else { 
       console.log(response); 
      } 
     } 
    ); 
} 

这适用于GE从用户拟合所有的自定义操作:

function getAllAction(){ 
    FB.api(
     '/me/appnamespace:myaction', 
     'get', 
     function(response) { 
      if (!response || response.error) { 
       alert('Error: ' + response.error.type + ' - ' + response.error.message); 
       console.log(response); 
      } else { 
       console.log(response); 
      } 
     } 
    ); 
} 

总之,有没有办法在FQL做到这一点:

  • 查询从目前的URL的对象ID?
  • 查询用户的操作ID(所有自定义操作和/或基于对象ID的特定操作)?

在此先感谢!

+0

我是谁正在试图做到这一点的只有一个? – andyderuyter

回答

相关问题