从经过身份验证的用户获取打开图形操作 ID


Get Open Graph action ID from authenticated user

我正在对Facebook Open Graph API进行第一次尝试。我制作了自定义操作类型和对象类型。对于这个问题,我将它们命名为"myaction"和"myobject"。

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 + ')');
            }
        }
    );
}

这行得通。操作将发布到用户的时间线。

但是,如果该用户想要在不同的会话中从我的网站中删除该操作(或多个操作(?有没有办法从用户查询自定义操作并显示它们?我可以使用数据库并存储 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);
            }
        }
    );
}

这适用于从用户那里获取所有自定义操作:

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 中做到这一点:

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

提前感谢!

此数据无法通过 FQL 获得,目前只能通过图形 API 获得。希望它能很快出现。

请参阅以下问题:

  1. FQL 获取用户的打开图形视频。监视活动

  2. 如何获取应用程序生成的所有开放图形测试版操作?