java - 如何通过 Open Graph 标签 friend 使用 facebook api taggable_friends

标签 java javascript jquery facebook facebook-graph-api

如何通过 Open Graph 标签 friend 使用 facebook api taggable_friends。 我的应用程序使用 taggable_friends api 我想在 friend 墙上标记我的 friend 。 使用提及 friend 或标记 friend https://developers.facebook.com/docs/opengraph/using-actions/v2.0#capabilities

我使用 Open Graph 文档逐步尝试 但是给我“你,或者这个应用程序的开放图谱测试用户,必须至少发布一次这个 Action ”如何设置?

https://developers.facebook.com/docs/apps/review/opengraph

最佳答案

在FB javascript sdk上,

-* fb 仪表板 -> 打开图

  1. 创建一个故事
  2. 列表项确保您在操作类型中启用了“功能”功能,例如 -tags、-user messages、-place 等。

-* 在你的 js 中

<强>1。调用js sdk

    window.fbAsyncInit = function() {
    FB.init({
      appId      : {YOUR_APP_ID} , // App ID
      version: 'v2.0',
      status     : true, // check login status
      cookie     : true, // enable cookies to allow the server to access the session
      oauth      : true, // enable OAuth 2.0
      xfbml      : true  // parse XFBML
    });
  };



    // Load the SDK Asynchronously
      (function(d){
         var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
         js = d.createElement('script'); js.id = id; js.async = true;
         js.src = "//connect.facebook.net/en_US/sdk.js";
         d.getElementsByTagName('head')[0].appendChild(js);
       }(document));
    }

<强>3。登录 FB 并使用这些范围进行询问

function Login()
    {

        FB.login(function(response) {
           if (response.authResponse) 
           {
                console.log(response.authResponse); // Get User Information.

            } else
            {
             console.log('Authorization failed.');
            }
         },{scope: 'user_friends, publish_actions, status_update, read_stream, manage_friendlists'});// ' user_interests, user_likes, etc.. '

    }

<强>4。使用以下函数获取已登录的用户 taggable_friends:

var  var friendsIDarray = [];
var user_friend_list;
    function meTaggableFriends(){
        FB.api(
            "/me/taggable_friends",
            function (response) {
              if (response && !response.error) {
                /* handle the result */
                console.log(response)

                    for(var i=0; i<response.data.length; i++){

                        var data = response.data;
                        friendsIDarray.push(data[i].id);    
                    }
                    user_friend_list = friendsIDarray.join();

              }
            }
        );

<强>5。现在,我们已将我们想要在帖子中标记的 friend 的 token ID 存储在 user_friend_list 中 我们可以使用这样的 Open Graph 操作来标记 friend :

FB.api(
                      'me/{namespace}:{action}',
                      'post',
                      {
                         {object-type}:'http://example.com/object/', // make sure to have the apropiate og:type meta set
                         place:'https://example.com/place/', // open graph page with metas for location, id for a location page etc
                         tags: user_friend_list, // the tokens ids for those friens you wanna tag and you got on previous step
                         title: 'whatever',
                         message: 'like this, you tag friends @['+ONE_TOKEN_ID_FROM_TAGGABLE_FRIENDS+'] , @['+ONE_TOKEN_ID_FROM_TAGGABLE_FRIENDS+'] etc'
                      }, 
                      function(response) {
                        console.log(response)
                      }
                );

您可以在以下位置找到更多信息:

https://developers.facebook.com/docs/opengraph/using-actions/v2.1

希望您觉得它有用。

关于java - 如何通过 Open Graph 标签 friend 使用 facebook api taggable_friends,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24482578/

相关文章:

java - 为什么这个批处理文件不启动任何内容

Java OS X Lion 关于菜单

javascript - 如何仅在对 gapi.client.youtube 的 request.execute 完成后才执行功能?

javascript - 替换表单提交页面上的文本

java - 在 Activity 更改时构建类似 iOS 的 Transition

java - 如何在 JTable 中显示来自 MS Access 数据库的数据?

javascript - 我想要对此代码 : (4 + [] + 8) 的解释

javascript - 从浏览器打印图像文件

jquery - 可排序不起作用

javascript - 如何使用动画一个接一个地移动一个 div