【发布时间】:2016-07-23 05:24:04
【问题描述】:
我试图让 HybridAuth 社交登录(2.6.0 版)在这个简单的 php 网站上工作。下载并安装了 HybridAuth。 每当我单击链接登录到社交网络 (facebook) 时,它都会将我重定向到 (MY_BASE_URL/index.php?hauth.start=Facebook&hauth.time),根本不显示任何登录窗口/错误消息。
这里是连接文件:
$config ="../hybridauth/config.php";
require_once( "../hybridauth/Hybrid/Auth.php" );
try{$hybridauth = new Hybrid_Auth( $config );
$provider = @ trim( strip_tags( $_GET["provider"] ) );
$adapter = $hybridauth->authenticate( $provider );
$adapter = $hybridauth->getAdapter( $provider );
$user_data = $adapter->getUserProfile();
if($user_data)
{
print_r($user_data);
}
else
{
echo '******* CRASH *******';
exit;
}
}
catch( Exception $e ){
switch( $e->getCode() ){
case 0 : echo "Unspecified error."; break;
case 1 : echo "Hybriauth configuration error."; break;
case 2 : echo "Provider not properly configured."; break;
case 3 : echo "Unknown or disabled provider."; break;
case 4 : echo "Missing provider application credentials."; break;
case 5 : echo "Authentication failed. "
. "The user has canceled the authentication or the provider refused the connection.";
case 6 : echo "User profile request failed. Most likely the user is not connected "
. "to the provider and he should to authenticate again.";
$adapter->logout();
break;
case 7 : echo "User not connected to the provider.";
$adapter->logout();
break;
}
echo "<b>Original error message:</b> " . $e->getMessage();
echo "<hr /><h3>Trace</h3> <pre>" . $e->getTraceAsString() . "</pre>";
}
这里是配置文件:
return
array(
"base_url" => "http://woonmako.com/hybridauth/index.php",
"providers" => array(
"Google" => array(
"enabled" => true,
"keys" => array("id" => "", "secret" => ""),
),
"Facebook" => array(
"enabled" => true,
"keys" => array("id" => "*********", "secret" => "***********"),
"trustForwarded" => false
),
"Twitter" => array(
"enabled" => true,
"keys" => array("key" => "", "secret" => ""),
"includeEmail" => false
),
),
"debug_mode" => false,
"debug_file" => "",
);
我想知道它是如何工作的以及我必须在哪个文件中获取用户信息。
【问题讨论】:
标签: php hybridauth