2016-07-01 18 views
1

Ich benutze Laravel v5.2.39. Ich möchte nur zum Dashboard umleiten, wenn Sie angemeldet sind. Wenn Sie die URL manuell ändern, wird Sie auf den Startbildschirm umgeleitet. Ich benutze Auth Middleware, aber es funktioniert nicht. Irgendeine Hilfe?Laravel Auth redirect funktioniert nicht

Meine routes.php Datei:

Route::get('/', function() { 
     return view('welcome'); 
    })->name('home'); 

    Route::get('dashboard', [ 
     'uses' => '[email protected]', 
     'as' => 'dashboard', 
     'middleware' => 'auth' 
    ]); 

Mein UserController.php:

public function getDashboard(){ 
    return view('dashboard'); 
} 

Und Auth-Middleware:

public function handle($request, Closure $next, $guard = null) 
{ 
    if (Auth::guard($guard)->guest()) { 
     if ($request->ajax() || $request->wantsJson()) { 
      return response('Unauthorized.', 401); 
     } else { 
      return redirect()->route('home'); 
     } 
    } 

    return $next($request); 
} 

Ich weiß nicht, was das Problem mit . Ich habe ein paar Zeichen und melde mich auch, aber ich denke nicht, dass das ein Problem ist. Wenn Somenone es sehen wollen, schreib mir.

Einen schönen Tag und vielen Dank.

+0

Möchten Sie das Problem erklären weiter zuweisen Sie konfrontiert sind? Ich denke nicht, dass es klar genug ist. – alariva

+0

Sie möchten dies [http://laravel.io/bin/32lqm] anscheinend in Ihren Routen tun – alariva

Antwort

2

Wie bereits erwähnt, haben Sie so etwas versucht?

Route::group(['middleware' => 'auth'], function() { 
    Route::get('dashboard', '[email protected]')->name('dashboard'); 
}); 

Oder Sie können wie so die Middleware in dem Konstrukt Funktion in Ihrer Klasse hinzufügen:

public function __construct() { 
     $this->middleware('auth'); 
    } 

Auch sehen the laravel documentation on using middleware with routes.

0

Try 'Middleware' => 'Auth: web' mit anstelle von 'Middleware' => 'Auth'

0

Hey im nicht klar, über Ihr Problem, aber dies wird Ihnen helfen, , wenn Sie für Projekt gehen Pfad localhost/project/ es localhost/project/home URL in dieser URL umleitet u kann jede Funktion

Route::get('/', function() { 
    return redirect('home'); 
}); 
Verwandte Themen