Javascript 从网页在amazon cognito中注册Facebook访问令牌
我遵循pragprog的教程,该示例使用google+在amazoncognito中存储令牌。登录google并在cognito works中注册 但在cognito中注册Facebook应用程序提供的访问令牌并不像预期的那样有效。我已经在FB注册了一个web应用程序,正在使用提供的应用程序id。登录FB是可以的,我获得了访问令牌 html:Javascript 从网页在amazon cognito中注册Facebook访问令牌,javascript,facebook,facebook-graph-api,amazon-web-services,Javascript,Facebook,Facebook Graph Api,Amazon Web Services,我遵循pragprog的教程,该示例使用google+在amazoncognito中存储令牌。登录google并在cognito works中注册 但在cognito中注册Facebook应用程序提供的访问令牌并不像预期的那样有效。我已经在FB注册了一个web应用程序,正在使用提供的应用程序id。登录FB是可以的,我获得了访问令牌 html: 我已在中的身份验证提供商中注册了FB应用程序id。控制台的输出显示我的姓名、邮件和令牌。我使用一个自签名证书运行它,以便wireshark显示加密通信。如
我已在中的身份验证提供商中注册了FB应用程序id。控制台的输出显示我的姓名、邮件和令牌。我使用一个自签名证书运行它,以便wireshark显示加密通信。如果http和https混合使用,则登录FB将失败。我必须创建一个CognitoSyncManager(),如中所述。这将在身份池中创建一个身份,可使用FB提供的令牌访问该身份池。在我的例子中,我有eu-west-1地区(爱尔兰)
<div class="fb-login-button" ... onlogin="checkFacebookStatus()"></div>
<script>
$(document).ready(function() {
$.ajaxSetup({ cache: true });
$.getScript('//connect.facebook.net/nn_NO/sdk.js', function() {
FB.init({
appId : 'my app id',
xfbml : true,
version : 'v2.6'
});
$('#fb-login-button').removeAttr('disabled');
checkFacebookStatus();
});
});
</script>
function checkFacebookStatus() {
FB.getLoginStatus(function(response) {
if (response.status === 'connected') {
var accessToken = response.authResponse.accessToken;
facebookSignIn(accessToken);
}
});
}
function facebookSignIn(accessToken) {
AWS.config.update({
region: 'eu-west-1',
credentials: new AWS.CognitoIdentityCredentials({
IdentityPoolId: learnjs.poolId,
Logins: {
'graph.facebook.com': accessToken
}
})
})
}
AWS.config.credentials.get(function() {
client = new AWS.CognitoSyncManager();
});