我已经和
Laravel
和 Auth0
一起工作了一段时间,我想我已经结束了:)
我可以使用
widget
/ hosted page
的链接登录我的应用程序
现在一切似乎都在工作,一旦页面回调到我的网站,我保存在数据库中的用户。
但是,我的应用程序似乎并没有记住用户。
当我尝试检查用户是否登录时:
$isLoggedIn = \Auth::check();
它说
false
我试过调试多个函数,但没有结果,所以我不知道从哪里开始。为什么会这样?
我的配置
所以这是我的
AuthController
:
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Routing\Controller;
class AuthController extends Controller
{
public function __construct()
{
}
public function login()
{
return \App::make('auth0')->login(null, null, ['scope' => 'openid profile email'], 'code');
}
public function logout()
{
\Auth::logout();
return \Redirect::intended('/');
}
public function dump()
{
$isLoggedIn = \Auth::check();
return view('dump')
->with('isLoggedIn', $isLoggedIn)
->with('user',\Auth::user()->getUserInfo())
->with('accessToken',\Auth::user()->getAuthPassword());
}
}
然后在我的网站中:
Route::get('/login', ['as' => 'login', 'uses' => 'AuthController@login']);
Route::get('/logout', ['as' => 'logout', 'uses' => 'AuthController@logout'])->middleware('auth');
Route::get('/dump', ['as' => 'dump', 'uses' => 'AuthController@dump', 'middleware' => 'auth'])->middleware('auth');
Route::get('/auth0/callback', '\Auth0\Login\Auth0Controller@callback');