![](/img/trans.png)
[英]How to get facebook user's hometown and location with JavaScript SDK?
[英]Get user's location using facebook javascript sdk
我正在使用下面的代码来获取用户的位置,但是,它不返回位置
FB.api('/me?fields=picture,location', function(res) {
console.log(res); // no location
});
知道我做错了什么以及如何获得用户位置?
更新
使用Graph API Explorer时 ,它确实可以提供用户位置,但是使用上面的代码则不能。
更新2
知道如何使用Facebook JavaScript SDK获取用户位置吗?
如果它在API资源管理器中有效,但在您的应用程序中无效,则只有一个原因:您未使用user_location
权限进行授权。 在API Explorer中,您只需在弹出窗口中选择它即可。 在您的代码中,您必须使用FB.login
专门要求它:
FB.login(function(response) {
console.log(response);
if (response.authResponse) {
//user just authorized your app
FB.api('/me?fields=picture,location', function(res) {
console.log(res);
});
}
}, {scope: 'user_location', return_scopes: true});
更大的示例: http : //www.devils-heaven.com/facebook-javascript-sdk-login/
确保以具有应用程序角色(管理员,开发人员,测试人员)的用户身份尝试该操作,否则它甚至不会征求许可 。 如果要公开,则需要先进行审核过程: https : //developers.facebook.com/docs/facebook-login/review
我在第一个回调的开始处添加了return_scopes
参数和console.log
,在chrome开发工具中调试了响应,并确保其包含user_location
权限。
顺便说一句,您在响应中也获得了访问令牌,请使用调试器检查授权权限: https : //developers.facebook.com/tools/debug/accesstoken/
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.