Laravel middleware ialah komponen pemintas dalam permintaan HTTP dan pemprosesan tindak balas, digunakan untuk melanjutkan fungsi aplikasi dengan logik tersuai. Middleware mengesahkan permintaan, mengubah suai data, melaksanakan operasi aplikasi, mengubah hala permintaan dan mengendalikan ralat dan pengecualian. Laravel menyediakan middleware terbina dalam seperti Auth dan Throttle, atau anda boleh mencipta middleware tersuai. Middleware boleh digunakan melalui middleware global atau middleware penghalaan untuk meningkatkan keselamatan, kefungsian dan kebolehselenggaraan aplikasi anda.
Laravel Middleware
Dalam rangka kerja Laravel, middleware ialah komponen pemintas yang dilaksanakan semasa permintaan HTTP dan pemprosesan tindak balas. Mereka menyediakan cara untuk melanjutkan fungsi aplikasi dengan logik tersuai tanpa mengubah suai pengawal atau fail penghalaan.
Cara Middleware Berfungsi
Apabila permintaan HTTP mencapai aplikasi Laravel, ia melalui timbunan middleware. Middlewares ini boleh:
ravel Menyediakan pelbagai binaan dalam perisian tengah, seperti:
Auth
:用于验证用户身份认证Csrf
:防止跨站请求伪造 (CSRF) 攻击Throttle
:限制用户在指定时间内可以进行的请求数量HttpsMiddleware
:强制将 HTTP 请求重定向到 HTTPS还可以创建自定义中间件来满足应用程序的特定需求。
使用中间件
在 Laravel 中使用中间件有两种主要方法:
app/Http/Kernel.php
文件中的 $middleware
属性中定义,适用于应用程序中的所有 HTTP 路由。middleware
HttpsMiddleware
: Paksa permintaan HTTP dialihkan ke HTTPS
Anda juga boleh mencipta middleware tersuai untuk Memenuhi khusus keperluan permohonan anda.
Menggunakan Middleware
🎜🎜Terdapat dua cara utama untuk menggunakan middleware dalam Laravel: 🎜🎜🎜🎜Global Middleware: 🎜Dalamapp/Http/Kernel.php
fail >>$middleware atribut, terpakai kepada semua laluan HTTP dalam aplikasi. 🎜🎜🎜Route middleware: 🎜Gunakan kaedah middleware
dalam definisi laluan untuk dilampirkan pada satu laluan atau kumpulan laluan. 🎜🎜🎜🎜Contoh: 🎜🎜<code class="php">// 全局中间件 Route::middleware(['auth', 'throttle:10,1'])->group(function () { // 路由组中的所有路由都需要身份验证和速率限制 }); // 单个路由中间件 Route::get('/profile', 'ProfileController@show')->middleware('can:view-profile');</code>
Atas ialah kandungan terperinci Apakah maksud perisian tengah laravel?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!