0

我正在尝试在我的网站上制作 facebook 登录系统。这是我的 facebook 授权路线

Route::get('auth/facebook', 'Auth\AuthController@redirectToProvider');
Route::get('auth/facebook/callback', 'Auth\AuthController@handleProviderCallback');

这是我在 authController 中的方法

public function redirectToProvider()
{
    return Socialite::driver('facebook')->redirect();
}

public function handleProviderCallback(Request $request)
{
    $user = Socialite::driver('facebook')->user();
    //some code....
}

所以当我点击链接(重定向到 FB)时,我收到了这个错误

InvalidStateException in AbstractProvider.php line 191:

在我的 services.php 文件中

 'facebook' => [
    'client_id' => '1730035173900238',
    'client_secret' => 'cdda4132a5b67249a08b1d777f7a69ad',
    'redirect' => 'http://localhost:8000/{$lang}/auth/facebook/callback',
]

$lang 是所有路由的语言前缀。我还在我的 session.php 中添加了

'domain' => "localhost"

在我在 Facebook 上的应用中,我有

http://localhost:8000/

在站点 URL 字段中

4

1 回答 1

1

将此代码放在班级的顶部

    use Auth;

在你的 authController 中它解决了我的问题

并确保您在 config/session.php 中的域设置

   'domain' => null,

希望对你有帮助...

干杯

亨德拉

于 2016-07-29T04:28:47.860 回答