我想在我的网站上添加Facebook登录,我的脚本工作正常,但我不确定这种方式是否正确,你能否验证并建议如果我做错了。我几乎没有问题。
脚本:
function statusChangeCallback(response)
{
if (response.status === 'connected') {
testAPI();
} else if (response.status === 'not_authorized') {
console.log('still not authorized!');
} else {
console.log("not connected, not logged into facebook, we don't know");
}
}
window.fbAsyncInit = function() {
FB.init({
appId : 'APP_ID',
cookie : true,
xfbml : true,
version : 'v2.8'
});
checkLoginState();
FB.AppEvents.logPageView();
};
(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/en_US/sdk.js";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
function checkLoginState() {
FB.getLoginStatus(function(response) {
statusChangeCallback(response);
});
}
function testAPI() {
console.log('Welcome! Fetching your information.... ');
FB.api('/me', { fields: 'name,email,gender' }, function(response) {
console.log('Successful login for: ' + response.name);
document.getElementById('status').innerHTML =
'Thanks for logging in, ' + response.name + '!';
window.location.replace('http://www.example.com');
});
}
按钮显示:
<div class="fb-login-button" data-onlogin="checkLoginState()" data-max-rows="1" data-size="medium" data-button-type="login_with" data-show-faces="false" data-auto-logout-link="false" data-login-text="Sign in with Facebook"></div>
成功登录后,我想通过传递id,电子邮件重定向到members-only.php。在上面的脚本中我写了window.location.replace('http://www.example.com');相反example.com,我可以给我的PHP文件名吗?
appId,那会没事吗?或者我们需要保密吗?
如果用户是第一次来,我们需要在数据库中注册哪些细节?从第二次我们如何识别该用户?
提前致谢。
答案 0 :(得分:0)
window.location.replace('http://www.example.com/members-only.php');