2017-09-04 4 views
0

인증을 위해 Auth0을 사용하고 있으며 로그인이 정상적으로 작동하지만 리디렉션 사용자가 다시 로그 된 후 로그 아웃 기능을 호출하는 즉시. 이것은 내 경로 파일입니다Auth0, Laravel 5.4 - 로그 아웃 후 사용자가 다시 로그 됨

<?php 

Route::get('/auth0/callback', '\Auth0\Login\[email protected]'); 

Route::group(['middleware' => ['auth']], function() { 
    Route::get('/', '[email protected]'); 

    Route::get('/dashboard', '[email protected]')->middleware('role'); 
    Route::get('/employees-status', '[email protected]')->middleware('role'); 
    Route::get('/user-status/{id}', '[email protected]')->middleware('role'); 

    Route::get('/request-update/{id}', '[email protected]'); 

    Route::post('/search', '[email protected]')->middleware('role'); 
    Route::post('/change-status', '[email protected]')->middleware('role'); 

    Route::get('/logout', function() { 
     var_dump(Auth::check()); 
     Auth::logout(); 
     var_dump(Auth::check()); 
     die; 
     return redirect('login'); 
    }); 
}); 


Route::get('/login', function() { 
    return \App::make('auth0')->login(); 
})->name('login'); 

그것은 보인다 인증 : 로그 아웃(); 예상대로 제 ​​위해서 var_dump는 사실을 나타내는 때문에가 작동하고 두 번째 거짓 (설치의 나머지 문서 https://auth0.com/docs/quickstart/webapp/laravel/01-login에서와 동일하다)를 도시한다.

로그 아웃 후 페이지를로드하려고하면 다시 로그인하게됩니다. 여기에 잘못된 아이디어가 있습니까?

답변

0

봅니다로 경로를 변경하려면 : Route::get('auth/logout', 'Auth\[email protected]'); 또는

public function __construct() 
{ 
    $this->middleware('guest', ['except' => ['logout', 'getLogout']]); 
} 

가에서 촬영 추가 AuthController 생성자에서 시도 :

(그래도 나중에 문제가 발생하는 경우도 다른 답변을 확인) https://stackoverflow.com/a/34667356/1275778