使用 facebook javascript sdk 获取用户的位置
Get user's location using facebook javascript sdk
我正在使用下面的代码来获取用户的位置,但是它没有 return 位置
FB.api('/me?fields=picture,location', function(res) {
console.log(res); // no location
});
知道我做错了什么以及如何获取用户位置吗?
更新
在 Graph API Explorer 中,它确实提供了用户位置,但在上面的代码中却没有。
更新 2
知道如何使用 Facebook JavaScript SDK 获取用户的位置吗?
如果它在 API Explorer 中有效,但在您的 App 中无效,则只有一个原因:您未授权 user_location
权限。在 API 资源管理器中,您可以 select 在弹出窗口中显示它。在您的代码中,您必须使用 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/
确保您以在应用程序中具有角色(管理员、开发人员、测试人员)的用户身份尝试此操作,否则它甚至不会请求权限。如果你想去public,你需要先完成审核过程:https://developers.facebook.com/docs/facebook-login/review
我在第一个回调的开头添加了 return_scopes
参数和 console.log
,在 chrome 开发工具中调试响应并确保它包含 user_location
许可。
顺便说一句,您也会在响应中获得一个访问令牌,使用调试器检查授权权限:https://developers.facebook.com/tools/debug/accesstoken/
我正在使用下面的代码来获取用户的位置,但是它没有 return 位置
FB.api('/me?fields=picture,location', function(res) {
console.log(res); // no location
});
知道我做错了什么以及如何获取用户位置吗?
更新
在 Graph API Explorer 中,它确实提供了用户位置,但在上面的代码中却没有。
更新 2
知道如何使用 Facebook JavaScript SDK 获取用户的位置吗?
如果它在 API Explorer 中有效,但在您的 App 中无效,则只有一个原因:您未授权 user_location
权限。在 API 资源管理器中,您可以 select 在弹出窗口中显示它。在您的代码中,您必须使用 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/
确保您以在应用程序中具有角色(管理员、开发人员、测试人员)的用户身份尝试此操作,否则它甚至不会请求权限。如果你想去public,你需要先完成审核过程:https://developers.facebook.com/docs/facebook-login/review
我在第一个回调的开头添加了 return_scopes
参数和 console.log
,在 chrome 开发工具中调试响应并确保它包含 user_location
许可。
顺便说一句,您也会在响应中获得一个访问令牌,使用调试器检查授权权限:https://developers.facebook.com/tools/debug/accesstoken/