【问题标题】:Facebook permissions giving undefinedFacebook 权限未定义
【发布时间】:2015-12-21 08:53:37
【问题描述】:

我试图通过在提示用户登录时在范围部分中询问权限来从一个人(我)的个人资料中获取简单信息。但是,我的结果是不确定的。我正在使用 Facebook 的快速入门 javascript sdk。即使我在登录后的响应中询问 first_name,我也无法定义。这是快速启动代码的小sn-p。我所做的只是将 response.name 更改为 response.first_name。但它不起作用。我究竟做错了什么?非常感谢!

function testAPI() {
console.log('Welcome!  Fetching your information.... ');
FB.api('/me', function(response) {
  console.log('Successful login for: ' + response.name);
  document.getElementById('status').innerHTML =
    'Thanks for logging in, ' + response.name + '!';
});

【问题讨论】:

    标签: javascript facebook facebook-graph-api


    【解决方案1】:
    FB.api('/me', {fields: 'name,first_name'}, function(response) {
      ...
    });
    

    它被称为“声明性字段”,您必须指定要获取哪些字段,否则您只会获取 id 和名称。

    当然,请确保用户已获得授权。这是一个教程:http://www.devils-heaven.com/facebook-javascript-sdk-login/

    【讨论】:

    • 成功了。谢谢@luschin。但是我应该写什么来获取 user_hometown?
    • 好吧...这个怎么样:{fields: 'name,first_name,user_hometown'}
    • @luschin,我已经试过了。它不起作用。我在我的范围和字段中添加了 user_hometown。我只能得到名字,姓氏。但是对于性别、家乡或生日等更多特权,它不起作用:(
    • 那你没有正确授权。确保您确实在身份验证过程中被要求提供 user_hometown 权限。 - 或者你没有设置家乡,这也是可能的。
    猜你喜欢
    • 2013-05-21
    • 1970-01-01
    • 1970-01-01
    • 2015-07-24
    • 2020-07-23
    • 1970-01-01
    • 2014-06-03
    • 2015-08-19
    • 1970-01-01
    相关资源
    最近更新 更多