2017-12-05 1 views
1

Gibt es eine Möglichkeit 5.5 in Laravel zu bieten, was 4.2 mit hatte:Laravel 5 Route :: when() Ersatz

Route::when('*-ajax', 'ajax'); 

ich eine Option hatte einen Filter auf alle Ajax-Routen zu befestigen, und seitdem ich wissen, dass Filter mit Middleware ersetzt wurden, aber ich erhalte eine Fehlermeldung, dass:

Attribute [when] does not exist. 

Antwort

0

führe ich in eine Lösung gefunden, eine globale Middleware für diese umgesetzt haben:

public function handle($request, Closure $next) 
{ 
    $parsedUrl = parse_url($request->url()); 

    if (key_exists('path', $parsedUrl) && strpos($parsedUrl['path'], '-ajax') !== false && !$request->ajax()) { 
     return response('Bad request', 400); 
    } 

    return $next($request); 
} 
0

Sie Request::is() verwenden können. Wenige Details im doc

Er akzeptiert auch mehrere params.

[Bearbeiten] Sie haben auch Request::ajax() die true zurückgibt, wenn Sie einen Ajax-Request

+0

und wo würden sie diese nutzen? – lagbox