我使用的是
laravel 5.7
和
laravel/socialite 3.1
。
我想使用我刚为这个项目配置的Facebook应用程序登录。
以下是我为此配置的主要文件:
/.env.
。
<预> <代码>…
facebook_client_id=***
facebook_client_secret=***
facebook_callback_url=http://localhost:8000/auth/facebook/callback
< /代码>
/config/services.php
。
<?PHP
返回
…
'facebook'=>。[
'client_id'=>env('facebook_client_id'),
'client_secret'=>env('facebook_client_secret'),
'redirect'=>env('facebook_callback_url'),
,
;
< /代码>
/routes/api.php。
<?PHP
使用照明\http\request;
…
route::get(“auth/facebook”,“socialitecontroller@redirecttoproviderfacebook”);
route::get(“auth/facebook/callback”,“socialitecontroller@handleprovidercallbackfacebook”);
< /代码>
/app/http/controllers/socialitecontroller.php。
<?PHP
命名空间应用程序\http\controllers;
使用社交名流;
类socialitecontroller扩展控制器
{
公共功能重定向到提供Facebook()。
{
返回socialite::driver(“facebook”)->redirect();
}
公共函数handleProviderCallbackFacebook()。
{
$user=socialite::driver('facebook')->user();
打印标记($user->token);
}
}
< /代码>
我的问题是,由于某种原因,我得到了错误:
runtimeexception
未根据请求设置会话存储。
< /代码>
如下图所示:

我根本不想在这个项目上使用会话。我只想从facebook获得tokenon the callback inside:function handleProviderCallbackfacebook()。
你知道如何解决这个问题吗?
谢谢!
以下是我为此配置的主要文件:
/Env
...
FACEBOOK_CLIENT_ID=***
FACEBOOK_CLIENT_SECRET=***
FACEBOOK_CALLBACK_URL=http://localhost:8000/auth/facebook/callback
/配置/services.php
<?php
return [
...
'facebook' => [
'client_id' => env('FACEBOOK_CLIENT_ID'),
'client_secret' => env('FACEBOOK_CLIENT_SECRET'),
'redirect' => env('FACEBOOK_CALLBACK_URL'),
],
];
/Prime/API.PHP
<?php
use Illuminate\Http\Request;
...
Route::get('auth/facebook', 'SocialiteController@redirectToProviderFacebook');
Route::get('auth/facebook/callback', 'SocialiteController@handleProviderCallbackFacebook');
/app/http/controllers/socialitecontroller.php
<?php
namespace App\Http\Controllers;
use Socialite;
class SocialiteController extends Controller
{
public function redirectToProviderFacebook()
{
return Socialite::driver('facebook')->redirect();
}
public function handleProviderCallbackFacebook()
{
$user = Socialite::driver('facebook')->user();
print_r($user->token);
}
}
我的问题是,由于某种原因,我得到了错误:
RuntimeException
Session store not set on request.
如下图所示:

我根本不想在这个项目上使用会话。我只想得到token
从脸谱网
在内部回拨时:function handleProviderCallbackFacebook()
.
你知道如何解决这个问题吗?
谢谢!