是否有可能我只会在成功验证后加载应用页面?如果oauth成功与否,我可以重定向到不同的页面吗?
<body>
<script src="http://connect.facebook.net/en_US/all.js"></script>
<div id="fb-root"></div>
<script>
FB.init({
appId: '.....',
status: true,
cookie: true,
xfbml: true,
oauth: true
});
FB.login({
scope: 'email',
});
</script>
非常感谢。
答案 0 :(得分:0)
我不确定你要做什么,但这可能对你有帮助。
FB.login( function( response ) {
if ( response.authResponse && response.authResponse.accessToken ) {
// redirect to SUCCESS
} else {
// redirect to FAILURE
}
}, { scope: 'email' } );
答案 1 :(得分:0)
您使用的是OAuth2吗?您真的不需要在等待access_token返回的位置重定向。 OAuth2流程中有几个重定向:
您将用户定向到 https://www.facebook.com/dialog/oauth?client_id=YOUR_APP_ID&redirect_uri=YOUR_URL
一旦用户登录(如有必要)并接受您的应用程序,他们就会被重定向回您的应用程序(或至少重定向到您的重定向页面)。 FB在查询字符串中传递授权令牌。 此时,您无需再重定向用户。
您现在可以向以下网址发送请求,但您无需将用户重定向到此网址: https://graph.facebook.com/oauth/access_token?client_id=YOUR_APP_ID&redirect_uri=YOUR_URLclient_secret=YOUR_APP_SECRET&code=authorizationcode
FB返回响应正文中的access_token。
然后,您可以根据该响应重定向您的用户。换句话说,您的用户位于步骤3和4的同一页面上,并且在步骤4结束时,您可以根据需要将其重定向到其他位置。