我在用
<fb:login-button scope="user_work_history" width...></fb:login_button>
该按钮用于登录用户...(以下代码运行时,预期的警报框会出现 uid 和 accessToken)
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
var uid = response.authResponse.userID;
var accessToken = response.authResponse.accessToken;
alert(uid + " " + accessToken);
}});
问题:当我进行 FB.api 调用时,它仅适用于公开可用的信息 - 例如喜欢或朋友 - 而不是扩展的个人资料信息,例如 user_work_history 或 user_hometown。我的猜测是它忽略了登录按钮中的范围属性,我现在处于沙盒模式,无法尝试使用多个 fb 帐户,但我不知道为什么它不询问权限(它曾经做过一次但仅关于事件,而不是工作经历或教育或家乡)当我登录时。
FB.api('/me', function(response) {
if(response.hometown) {
$.each(response.hometown,function(index,hometown) {
$("#networksDiv").append("<label>"+response.hometown+"</label>"+"<input type='checkbox' name='"+response.hometown+"' id='"+response.hometown+"' title='"+response.hometown+"'</input><br />");
});
上面的代码返回 [object] 数组,某些调用返回 'undefined'
控制台中的响应对象是: [object Object] 只是一个未定义对象的数组。
任何帮助深表感谢。