Facebook身份验证到我的PHP页面
我正在尝试允许用户使用Facebook在我的页面上注册。 这就是我连接/登录Facebook的方式(只是JS代码) 我的问题是,我想在注册后登录。我将使用$.post请求进行注册,但是现在什么是验证实际登录的最佳方法,因为您无法检索用户FB密码 我希望当用户登录Facebook时,页面能够执行实际的登录身份验证(从我的站点)。例如: 将有两种方法登录到我的网站Facebook身份验证到我的PHP页面,php,facebook,authentication,Php,Facebook,Authentication,我正在尝试允许用户使用Facebook在我的页面上注册。 这就是我连接/登录Facebook的方式(只是JS代码) 我的问题是,我想在注册后登录。我将使用$.post请求进行注册,但是现在什么是验证实际登录的最佳方法,因为您无法检索用户FB密码 我希望当用户登录Facebook时,页面能够执行实际的登录身份验证(从我的站点)。例如: 将有两种方法登录到我的网站 使用我的登录界面(当用户名 密码正确) 使用Facebook(它应该将数据发布到与通过我的站点登录相同的PHP页面,这样就好像用户通过我
email: "my_email address"
first_name: "My Name"
gender: "male"
id: "1508539292713828"
last_name: "My Surname"
link: "https://www.facebook.com/app_scoped_user_id/1508539292713828/"
locale: "en_US"
name: "Full name"
timezone: 2
updated_time: "2014-06-26T08:21:36+0000"
verified: true
您可以使用服务器端的来检查用户是否使用以下方式登录:
// initialize SDK here
// If this returns the user ID, the user is logged in
if ($userId = $facebook->getUser()) {
try {
$userData = $facebook->api('/me');
} catch (Exception $e) {
echo $e->getMessage();
exit();
}
$email = $userData["email"];
// Do whatever
}
编辑:流程是:使用JS SDK登录用户,然后在FB.login回调中发送一个AJAX请求,检查用户是否使用PHP SDK登录
// initialize SDK here
// If this returns the user ID, the user is logged in
if ($userId = $facebook->getUser()) {
try {
$userData = $facebook->api('/me');
} catch (Exception $e) {
echo $e->getMessage();
exit();
}
$email = $userData["email"];
// Do whatever
}