Das Folgende sind die Notizen, die ich als Referenz zusammengestellt habe, als ich mir Videos auf der chinesischen PHP-Website angesehen habe. Im Folgenden finden Sie einige Grundkenntnisse. Wenn Sie mit den Grundkenntnissen nicht vertraut sind, können Sie einen Blick darauf werfen. Der letzte Artikel, den ich geteilt habe, befasste sich mit der Installation von Laravel durch Composer. Wenn Sie weitere Artikel sehen möchten, folgen Sie mir.
Middleware fügt der Route tatsächlich eine Filter- oder Schutzebene hinzu. Das Präfix und der Namespace werden als Array-Parameter der Gruppe übergeben, und die Middleware wird auch als Array-Parameter der Gruppe übergeben Schreiben
Vor dem Hinzufügen der Middleware
Route::group(['prefix' => 'admin','namespace'=>'Admin'], function () { Rount::get('login','IndexController@login'); Rount::get('index','IndexController@index'); });
Route::group(['prefix' => 'admin','namespace'=>'Admin','middleware'=>['web']], function () { Rount::get('login','IndexController@login'); Rount::get('index','IndexController@index'); });
Route::get('/',function(){ session(['key'=>123]); return view('welcome'); });
Route::get('/test',function(){ echo session('key'); return 'test'; });
2. Definieren Sie manuell eine Cloud-Login-Middleware für die Hintergrundverwaltung in der Datei Kernel.php
Vor der Definition:Route::group(['middleware'=>['web']], function () { Route::get('/',function(){ session(['key'=>123]); return view('welcome'); }); Route::get('/test',function(){ echo session('key'); return 'test'; }); });
protected $routeMiddleware = [ 'auth' => \Illuminate\Auth\Middleware\Authenticate::class, 'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class, 'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class, 'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class, ];
protected $routeMiddleware = [ 'auth' => \Illuminate\Auth\Middleware\Authenticate::class, 'auth.basic' => \Illuminate\Auth\Middleware\AuthenticateWithBasicAuth::class, 'guest' => \App\Http\Middleware\RedirectIfAuthenticated::class, 'throttle' => \Illuminate\Routing\Middleware\ThrottleRequests::class, 'admin.login' => \App\Http\Middleware\AdminLogin::class, ];
php artisan make:middleware AdminLogin
<?php namespace App\Http\Middleware; use Closure class AdminLogin { /** * Handle an incoming request. * * @param \Illuminate\Http\Request $request * @param \Closure $next * @return mixed */ public function handle($request, Closure $next) { echo 12344445; return $next($request); } }
3. Überprüfung des Hintergrund-Superadministrators
Route::group(['middleware'=>['web','admin.login'],], function () { Route::get('/',function(){ session(['key'=>123]); return view('welcome'); }); Route::get('/test',function(){ echo session('key'); return 'test'; }); });
Route::group(['prefix' => 'admin','namespace'=>'Admin','middleware'=>'web'], function () { Rount::get('login','IndexController@login');//登录不需要后台管理员的超级认证 }); Route::group(['prefix' => 'admin','namespace'=>'Admin','middleware'=>'admin.login'], function () { Rount::get('index','IndexController@index');//超级管理员需要认证后才能进入欢迎页面和编辑页面 Rount::resource('article','ArticleController'); });
<?php namespace App\Http\Controllers\Admin; use App\Http\Controllers\Controller; class IndexController extends Controller { public function index(){ return view('welcome'); } function login(){ session(['admin'=>1]); //登录信息用admin存储 return '<h1>登录<h1>' } }
Das obige ist der detaillierte Inhalt von[Organisation beachten] Einführung und Erstellung der Laravel-HTTP-Middleware. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!