Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Laravel 5.4 Logout

Bom dia, Tentei realizar a ação de Logout, mas por algum motivo a rota de logout está apontada para Auth/AuthController@getLogout. Como o controlador não existia eu o criei com a intenção de implementar a lógica de logout, mas a função Auth::logout(); não funciona. Também tentei imprimir o Auth::user();, mas sempre retorna em branco, quando nos demais controllers eu recupero o usuário logado. Segue o código:

<?php

namespace estoque\Http\Controllers\Auth;

use Illuminate\Http\Request;
use estoque\Http\Controllers\Controller;
use Auth;
use Session;

class AuthController extends Controller
{

    public function getLogout(){
        //echo "auth:" . Auth::user();
        Auth::logout();
        Session::flush();
        return redirect("/login");
    }
}

O resultado desse código sempre vai para /home onde eu imprimo a função Auth::user(); e exibe o usuário logado normalmente.

1 resposta
solução!

Tive que acrescentar a linha Route::get('/auth/logout', 'Auth\AuthController@logout'); no web.php logo após Auth::routes();, Por algum motivo a rota padrão do Auth:routes() não pega o usuário logado através do Auth::user().

//web.php

Route::get('/', function () {
    return view('welcome');
});

require_once("route_produto.php");
require_once("route_fornecedor.php");

Auth::routes();
Route::get('/home', 'HomeController@index');
Route::get('/auth/logout', 'Auth\AuthController@logout');