我正在为Facebook制作游戏,我希望他们能够登录然后进入游戏。 我有弹出屏幕的登录按钮和我需要的权限,但我不能让他们重定向回我的网址。
我使用此代码:
<div id="fb-root"></div>
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/nl_NL/all.js#xfbml=1&appId=380841622050947";
fjs.parentNode.insertBefore(js, fjs);
window.navigate("www.google.com");
}(document, 'script', 'facebook-jssdk')); </script>
<div class="fb-login-button" data-max-rows="5" data-size="xlarge" data-show-faces="true" data-auto-logout-link="false" scope="email,publish_stream"></div>
我缺少什么?
我试过用这个:
window.navigate(”top.jsp”);
但我似乎无法抓住&#34;播放器登录&#34;动作,所以我可以在那之后重定向。
提前致谢!!
答案 0 :(得分:0)
好吧,您似乎没有使用必要的完整代码才能通过JS SDK登录。请查看https://developers.facebook.com/docs/facebook-login/login-flow-for-web
下的指南答案 1 :(得分:0)
如果您想在成功登录后重定向用户,可以使用FB.Event.subscribe
-
完整的代码将是 -
<div id="fb-root"></div>
<script>(function(d, s, id) {
var js, fjs = d.getElementsByTagName(s)[0];
if (d.getElementById(id)) return;
js = d.createElement(s); js.id = id;
js.src = "//connect.facebook.net/nl_NL/all.js#xfbml=1&appId=380841622050947";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
window.fbAsyncInit = function() {
FB.init({
appId : '380841622050947',
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
xfbml : true // parse XFBML
});
FB.Event.subscribe('auth.login', function(r){
console.log(r.status);
if ( r.status === 'connected'){
window.location.href = '{redirect-to-url}'
}
});
};
</script>
<div class="fb-login-button" data-max-rows="5" data-size="xlarge" data-show-faces="true" data-auto-logout-link="false" scope="email,publish_stream"></div>