如何使用Laravel 5设置facebook登录我安装了php-sdk-v4,并尝试了这样的操作:
<?php namespace App'Http'Controllers;
use App'Http'Requests;
use App'Http'Controllers'Controller;
use Illuminate'Support'Facades'Redirect;
use Illuminate'Http'Request;
use FacebookHelper;
use Illuminate'Support'Facades'Config;
use Facebook'FacebookSession;
use Facebook'FacebookRedirectLoginHelper;
class LoginFacebookController extends Controller {
private $helper;
public function _construct(){
FacebookSession::setDefaultApplication(Config::get('facebook.app_id'), Config::get('facebook.app_secret'));
$this-> helper = new FacebookRedirectLoginHelper(url('login/fb/callback'));
}
public function getUrlLogin(){
return $this -> helper->getLoginUrl(Config::get('facebook.app_scope'));
}
public function login(){
return Redirect::to(self::getUrlLogin());
}
public function callback(){
dd(Input::all());
}
}
但是得到这个错误:
LoginFacebookController.php中的致命错误异常第23行:在非对象上调用成员函数getLoginUrl()
有什么解决方案吗?
Laravel 5推出了第一方Socialite包,其中包括对Facebook的支持。文档中有更多关于如何设置的信息,但最终,与Facebook交互所需的代码要容易得多:
$user = Socialize::with('facebook')->user();
运行以下命令:
apt-get install php5-curl
composer update
然后,在提供程序中添加类,并在别名中添加Socialite
别名。