首頁 > php框架 > Laravel > laravel中介軟體基礎詳解

laravel中介軟體基礎詳解

WBOY
發布: 2022-05-18 20:41:50
轉載
3006 人瀏覽過

本篇文章為大家帶來了關於laravel的相關知識,其中主要介紹了關於中間件的相關問題,包括了什麼是中間件、自訂中間件等等,中間件為過濾進入應用的HTTP 請求提供了一套便利的機制,下面一起來看一下,希望對大家有幫助。

laravel中介軟體基礎詳解

【相關推薦:laravel影片教學

什麼是中間件

    中間件為過濾進入應用的HTTP 請求提供了一套便利的機制。例如,Laravel 內建了一個中間件來驗證使用者是否經過認證(如登入),如果使用者沒有經過認證,則中間件會將使用者重新導向到登入頁面;而如果使用者已經經過認證,則中介軟體會允許請求繼續往前進入下一步操作。除了認證功能,中間件還可以用來處理許多其他任務。例如,CORS 中間件可以為離開站 點的相應添加合適的頭(跨域);日誌中間件可以記錄所有進入站點的請求,從而方便我們 構建系統日誌系統。

    Lavarel 自帶了一些中介軟體,包括認證、CSRF 保護中介軟體等。所有的中介軟體都位於 app\Http\Middleware 目錄下。

一、自訂中間件

步驟:

  1. #使用artisan 指令建立中間件php artisan make:middleware 中介軟體名稱
  2. 在建立的中間件中編寫邏輯
  3. 在app\Http 資料夾中的設定檔Kernel.php 中註冊中間件
  4. 將中間件指派給路由或控制器

二、舉例

例如遊樂園某些項目需要12歲或身高超過1米4可以玩。

我們建立一個檢驗年齡的中間件

php artisan make:middleware CheckAge
登入後複製

laravel中介軟體基礎詳解

#Closure 是一個閉包函數
$request用來接收應用程式的請求陣列
$next 將請求傳遞給應用程式
$next($request) 將請求傳遞給應用程式

 public function handle(Request $request, Closure $next)
    {
        if($request->age <h3>註冊中間件</h3><p>開啟app\Http資料夾中的設定檔Kernel.php</p><blockquote><p>$middleware 設定全域中間件,所有http請求都需要經過我們定義好的中間件。 <br> $middlewareGroups中間件群組<br> $routeMiddleware 定義別名</p></blockquote><pre class="brush:php;toolbar:false">'age' => \App\Http\Middleware\CheckAge::class
登入後複製

laravel中介軟體基礎詳解

開啟web.php建立一個路由

//中间件Route::get('middleware/{age}',function () {
    return "你的年龄符合要求";})->middleware('age');
登入後複製

測試

http://www.la.com/middleware/1
laravel中介軟體基礎詳解

http://www.la.com/middleware/12
laravel中介軟體基礎詳解

#【相關推薦:laravel影片教學

#

以上是laravel中介軟體基礎詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:csdn.net
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板