Facebook登录问题(php sdk 3.1.1+;最新js sdk) 我已经创建了test.php 从中复制示例 更改了appId和密码 已将test.php上载到服务器 试图登录
我得到一个异常“必须使用活动访问令牌来查询当前用户的信息”Facebook登录问题(php sdk 3.1.1+;最新js sdk) 我已经创建了test.php 从中复制示例 更改了appId和密码 已将test.php上载到服务器 试图登录,facebook,login,facebook-php-sdk,Facebook,Login,Facebook Php Sdk,我得到一个异常“必须使用活动访问令牌来查询当前用户的信息” 请帮我找个人做这个。。已经5天了,我对此无能为力。如果你发布代码会更容易些,因为这听起来像是打字错误。您没有登录到Facebook,并且您的页面没有要求您登录,因此您没有获得令牌,并且您收到令牌错误。 这项工作: <?php // * Copyright 2011 Facebook, Inc. require '../inc/src/facebook.php'; // Create our Application inst
请帮我找个人做这个。。已经5天了,我对此无能为力。如果你发布代码会更容易些,因为这听起来像是打字错误。您没有登录到Facebook,并且您的页面没有要求您登录,因此您没有获得令牌,并且您收到令牌错误。 这项工作:
<?php
// * Copyright 2011 Facebook, Inc.
require '../inc/src/facebook.php';
// Create our Application instance (replace this with your appId and secret).
$facebook = new Facebook(array(
'appId' => 'APP ID NUMBER',
'secret' => 'APP SECRET CODE',
'scope' => 'manage_pages,offline_access,publish_stream'
));
// Get User ID
$user = $facebook->getUser();
// We may or may not have this data based on whether the user is logged in.
//
// If we have a $user id here, it means we know the user is logged into
// Facebook, but we don't know if the access token is valid. An access
// token is invalid if the user logged out of Facebook.
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();
}
?>
<!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 ?>
<?php
$args = array(
'message' => 'Garage Band!',
'link' => 'http://www.fancyapps.com/',
'caption' => 'Looking for 1000s og visitors!'
);
$facebook->api("/me/feed", "post", $args); ?>
</body>
</html>
php sdk
身体{
字体系列:“Lucida Grande”,Verdana,Arial,无衬线;
}
H1A{
文字装饰:无;
颜色:#3b5998;
}
H1A:悬停{
文字装饰:下划线;
}
php sdk
使用PHP SDK处理的OAuth 2.0登录:
PHP会话
你
/图片“>
您的用户对象(/me)
您没有连接。
如果你发布代码会更容易,因为这听起来像是打字错误。你没有登录Facebook,你的页面也没有要求你登录,因此你没有得到令牌,你会得到令牌错误。
这项工作:
<?php
// * Copyright 2011 Facebook, Inc.
require '../inc/src/facebook.php';
// Create our Application instance (replace this with your appId and secret).
$facebook = new Facebook(array(
'appId' => 'APP ID NUMBER',
'secret' => 'APP SECRET CODE',
'scope' => 'manage_pages,offline_access,publish_stream'
));
// Get User ID
$user = $facebook->getUser();
// We may or may not have this data based on whether the user is logged in.
//
// If we have a $user id here, it means we know the user is logged into
// Facebook, but we don't know if the access token is valid. An access
// token is invalid if the user logged out of Facebook.
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();
}
?>
<!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 ?>
<?php
$args = array(
'message' => 'Garage Band!',
'link' => 'http://www.fancyapps.com/',
'caption' => 'Looking for 1000s og visitors!'
);
$facebook->api("/me/feed", "post", $args); ?>
</body>
</html>
php sdk
身体{
字体系列:“Lucida Grande”,Verdana,Arial,无衬线;
}
H1A{
文字装饰:无;
颜色:#3b5998;
}
H1A:悬停{
文字装饰:下划线;
}
php sdk
使用PHP SDK处理的OAuth 2.0登录:
PHP会话
你
/图片“>
您的用户对象(/me)
您没有连接。
为了补充原始问题,我复制了normeus发布的代码,将appID和secret更改为我的应用程序的值,并得到以下结果:
public static $CURL_OPTS = array(
CURLOPT_CONNECTTIMEOUT => 100,//-----increase this value
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 600,//-----increase this value
CURLOPT_USERAGENT => 'facebook-php-3.1',
);
当然,在屏幕顶部的facebook栏中显示,自从我实际登录以来,我有一条未读消息。是否需要进行其他设置?似乎有很多人有这个问题,但也有很多人没有最终的解决方案
Darryl为了补充原始问题,我复制了Normaus发布的代码,将appID和secret更改为我的应用程序的值,并得到以下结果:
public static $CURL_OPTS = array(
CURLOPT_CONNECTTIMEOUT => 100,//-----increase this value
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 600,//-----increase this value
CURLOPT_USERAGENT => 'facebook-php-3.1',
);
当然,在屏幕顶部的facebook栏中显示,自从我实际登录以来,我有一条未读消息。是否需要进行其他设置?似乎有很多人有这个问题,但也有很多人没有最终的解决方案
Darryl我找到了解决办法 我已经将CURLOPT_SSL_VERIFYPEER=>0添加到facebook基类中
我找到了解决办法 我已经将CURLOPT_SSL_VERIFYPEER=>0添加到facebook基类中
我多次遇到同样的问题。试试这个:
我多次遇到同样的问题。试试这个: