Facebook 网站 API : Login and display user image and Name. 主动访问 token 错误

标签 facebook facebook-graph-api

我的问题是显示登录按钮并(用户登录后)显示他的个人资料图片、姓名和“注销”链接。

在 facebook api 文档(此处 http://developers.facebook.com/docs/guides/web/#login )中,我找到了这个示例:

 <html>
  <head>
   <title>My Facebook Login Page</title>
  </head>
  <body>

    <div id="fb-root"></div>
    <script>
      window.fbAsyncInit = function() {
        FB.init({
          appId      : 'YOUR_APP_ID', // App ID
          channelUrl : '//WWW.YOUR_DOMAIN.COM/channel.html', // Channel File
          status     : true, // check login status
          cookie     : true, // enable cookies to allow the server to access the session
          xfbml      : true  // parse XFBML
        });
        FB.api('/me', function(user) {
          if (user) {
            var image = document.getElementById('image');
            image.src = 'http://graph.facebook.com/' + user.id + '/picture';
            var name = document.getElementById('name');
            name.innerHTML = user.name
          }
        });
      };
      // Load the SDK Asynchronously
      (function(d){
         var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
         if (d.getElementById(id)) {return;}
         js = d.createElement('script'); js.id = id; js.async = true;
         js.src = "//connect.facebook.net/en_US/all.js";
         ref.parentNode.insertBefore(js, ref);
       }(document));
    </script>

    <div align="center">
      <img id="image"/>
      <div id="name"></div>
    </div>

  </body>
</html>

这应该符合我的要求。我用我的 app_id 和我的域站点 (http://localhost/index.html) 替换了“MY_APP_ID”和 MY_DOMAIN.COM。我还添加了一个登录按钮,正如我在文档中找到的那样(可以使用并允许我登录),但随后没有显示图像或名称。我在控制台中编写了“用户”对象,它包含以下内容:

error: Object
   code: 2500
   message: "An active access token must be used to query information about the current user."
   type: "OAuthException"

我应该如何使用这个“主动访问 token ”?

最佳答案

为了完成任何用户数据检索,每个 Facebook 应用程序都必须首先对用户 session 进行身份验证,以确保应用程序拥有最终用户检索其数据的权限。

引用:https://developers.facebook.com/docs/authentication

使用 Javascript SDK 检索他们的访问 token ,您应该能够开始检索他们的用户显示名称和图像。

Facebook JS SDK:https://github.com/facebook/facebook-js-sdk/

关于Facebook 网站 API : Login and display user image and Name. 主动访问 token 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11472908/

相关文章:

ios - PFFacebookUtils。如何区分登录和注册?

javascript - 在 Facebook/Twitter 上分享并确认已分享

facebook - 让 friend 在 Facebook 上使用相同的应用程序

facebook - 在 Facebook 中导出事件 URL

facebook - 如何处理 Facebook Graph API 中带逗号的 URL

javascript - facebook iframe 应用程序 youtube 嵌入错误 不安全 javascript

android - 实现 Facebook 愿望 list 教程应用程序不拥有操作类型错误

ios - FBSDKProfile currentProfile 为 nil 但 FBSDKAccessToken currentAccessToken 有值

android - 如何在 Android 中解析从 facebook 接收到的包数据?

ios - 无法在 iOS SDK 上创建 Facebook 测试用户帐户