Can';t使用facebook登录&x27;什么是php示例?
几天来,我断断续续地试图让它发挥作用,但似乎毫无进展。无论我尝试过什么,我都能得到 您没有连接。奈提克的公众简介 我使用的是共享ssl,这与此有关系吗? 我猜这是给我带来问题的OAuth2.0? 如果我转到Can';t使用facebook登录&x27;什么是php示例?,php,facebook,oauth-2.0,Php,Facebook,Oauth 2.0,几天来,我断断续续地试图让它发挥作用,但似乎毫无进展。无论我尝试过什么,我都能得到 您没有连接。奈提克的公众简介 我使用的是共享ssl,这与此有关系吗? 我猜这是给我带来问题的OAuth2.0? 如果我转到https://www.facebook.com/dialog/oauth?client_id=IDNUMBER&redirect_uri=https://apps.facebook.com/...我可以查看我的所有信息 但如果我只是在facebook主页上点击应用程序,它会说我没有登录? 有
https://www.facebook.com/dialog/oauth?client_id=IDNUMBER&redirect_uri=https://apps.facebook.com/...
我可以查看我的所有信息
但如果我只是在facebook主页上点击应用程序,它会说我没有登录?
有什么想法吗?
谢谢大家!
<?php
require 'src/facebook.php';
// Create our Application instance (replace this with your appId and secret).
$facebook = new Facebook(array(
'appId' => '...',
'secret' => '...',
));
// Get User ID
$user = $facebook->getUser();
if ($user) {
try {
// Proceed knowing you have a logged in user who's authenticated.
$user_profile = $facebook->api('/me');
} catch (FacebookApiException $e) {
error_log($e);
$user = null;
}
}
// Login or logout url will be needed depending on current user state.
if ($user) {
$logoutUrl = $facebook->getLogoutUrl();
} else {
$loginUrl = $facebook->getLoginUrl();
}
// This call will always work since we are fetching public data.
$naitik = $facebook->api('/naitik');
?>
<!doctype html>
<html xmlns:fb="http://www.facebook.com/2008/fbml">
<head>
<title>php-sdk</title>
<style>
body {
font-family: 'Lucida Grande', Verdana, Arial, sans-serif;
}
h1 a {
text-decoration: none;
color: #3b5998;
}
h1 a:hover {
text-decoration: underline;
}
</style>
</head>
<body>
<h1>php-sdk</h1>
<?php if ($user): ?>
<a href="<?php echo $logoutUrl; ?>">Logout</a>
<?php else: ?>
<div>
Login using OAuth 2.0 handled by the PHP SDK:
<a href="<?php echo $loginUrl; ?>">Login with Facebook</a>
</div>
<?php endif ?>
<h3>PHP Session</h3>
<pre><?php print_r($_SESSION); ?></pre>
<?php if ($user): ?>
<h3>You</h3>
<img src="https://graph.facebook.com/<?php echo $user; ?>/picture">
<h3>Your User Object (/me)</h3>
<pre><?php print_r($user_profile); ?></pre>
<?php else: ?>
<strong><em>You are not Connected.</em></strong>
<?php endif ?>
<h3>Public profile of Naitik</h3>
<img src="https://graph.facebook.com/naitik/picture">
<?php echo $naitik['name']; ?>
</body>
</html>
尝试添加更多权限,如read\u friendlist,以便当用户按您的要求注销时,API在语句$fb->API('/me')
上引发异常。为…设置
您还可以尝试将$params=array('next'=>'您的登录页')
添加到您的facebook登录请求中,作为$fb->loginUrl($params)
您能提供一些详细信息吗?我猜你上面粘贴的脚本正在你的服务器上某个地方运行,你制作了一个facebook画布应用程序来加载它?我对你说你只是不断收到错误信息的最初部分感到困惑。关于页面上的内容、你在哪里看到错误等的更多信息?你能在你的服务器代码中设置一个断点来逐步解决它吗?是的,这个脚本在我的服务器上,我还有一个facebook画布应用程序来加载它。我没有收到错误消息,但是这个脚本应该显示关于我自己的信息,但是它告诉我需要登录facebook(当我在facebook和canvas应用程序上时,这种情况发生在我身上),我不知道如何在php中设置断点,但我已经测试了一些东西,如果($user)它是假的,它看起来像哪里有。如果我尝试显示我的id,它为零。0表示你尚未验证该应用。你是只在IE中看到这一点,还是其他浏览器也在做同样的事情?我在共享(mediatemple)服务器上使用facebook的示例代码时遇到了同样的问题。你找到解决这个问题的办法了吗?
$params = array('scope' => 'read_friendlists, friends_photos');
//$facebook->getLoginUrl($params);
//$facebook->getLogoutUrl($params);
// now use these login logout urls