我需要从Javascript SDK中的FB.login
方法获取访问令牌。我的登录码是
FB.login(function(response) {
if (response.session) {
if (response.perms) {
} else {
// user is logged in, but did not grant any permissions
alert("No Permission..");
}
} else {
// user is not logged in
alert("Please login to facebook");
}
}, {perms:'read_stream,publish_stream,offline_access'});
有什么方法可以获取访问令牌吗?我可以使用PHP
获取访问令牌。
发布于 2011-01-21 23:48:20
您可以使用FB.getAuthResponse()['accessToken']
获取访问令牌
FB.login(function(response) {
if (response.authResponse) {
var access_token = FB.getAuthResponse()['accessToken'];
console.log('Access Token = '+ access_token);
FB.api('/me', function(response) {
console.log('Good to see you, ' + response.name + '.');
});
} else {
console.log('User cancelled login or did not fully authorize.');
}
}, {scope: ''});
编辑:更新为使用Oauth 2.0,自2011年12月起需要。现在使用FB.getAuthResponse();
如果您使用的浏览器没有控制台(我是在跟您说,Internet Explorer),请务必注释掉console.log
行或使用日志故障安全脚本,例如:
if (typeof(console) == "undefined") { console = {}; }
if (typeof(console.log) == "undefined") { console.log = function() { return 0; } }
发布于 2012-01-26 18:53:33
response.session.access_token
在我的代码中不起作用。但这是可行的:response.authResponse.accessToken
FB.login(function(response) { alert(response.authResponse.accessToken);
}, {perms:'read_stream,publish_stream,offline_access'});
发布于 2014-02-20 22:22:31
https://developers.facebook.com/docs/facebook-login/login-flow-for-web/
{
status: 'connected',
authResponse: {
accessToken: '...',
expiresIn:'...',
signedRequest:'...',
userID:'...'
}
}
FB.login(function(response) {
if (response.authResponse) {
// The person logged into your app
} else {
// The person cancelled the login dialog
}
});
https://stackoverflow.com/questions/4758770
复制相似问题