gpt4 book ai didi

facebook - 单击 Facebook 登录按钮后重定向,即使已经登录 Facebook

转载 作者:行者123 更新时间:2023-11-30 05:19:24 26 4
gpt4 key购买 nike

我的主页上有标准的 Facebook 登录按钮,我不希望人们仅在用户单击登录按钮时使用他们的 Facebook 帐户自动登录我的网站。

如果用户未登录 Facebook,将出现一个弹出窗口询问他的凭据,之后他将被重定向到 loggedin.html

<div id="fb-root"></div>
<fb:login-button perms="email"></fb:login-button>

<script>
window.fbAsyncInit = function() {
FB.init({
appId : 'xxxxxxxxxxxx',
status : true,
cookie : true,
xfbml : true
});

FB.Event.subscribe('auth.login', function() {
window.location = "loggedin.html";
});
};

(function() {
var e = document.createElement('script');
e.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
e.async = true;
document.getElementById('fb-root').appendChild(e);
}());
</script>

如果用户已经登录 Facebook,当他单击按钮时,弹出窗口会立即出现并立即消失,我对此没有意见。但用户不会重定向到 loggedin.html。我该怎么做?

最佳答案

如果使用PHP SDK,可以使用如下代码:

require_once 'path/to/facebook.php';
define('A_ID', '*YOUR APP ID*');
define('A_SECRET', 'YOUR APP SECRET');

$facebook = new Facebook(array('appId' => A_ID, 'secret' => A_SECRET, 'cookie' => true));
$userId = $facebook->getUser();

if (!$userId):
?>
<!-- HTML to show if the $userId isn't available (user isn't logged in) -->
<?php
else:
?>
<!-- HTML to show if the $userId is available (user is logged in)-->
<?php
endif;

理想情况下,您应该使用 PHP SDK,因为与使用 JS SDK 插入数据相比,它可以让您更好地控制数据及其显示方式。

Facebook 在此处提供了 PHP SDK 的引用:developers.facebook.com/docs/reference/php/

JavaScript SDK 引用在这里:developers.facebook.com/docs/reference/javascript/

关于facebook - 单击 Facebook 登录按钮后重定向,即使已经登录 Facebook,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5835843/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com