日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

PHP laravel實現基本路由配置詳解

瀏覽:402日期:2022-06-06 09:15:02
目錄
  • 1.路由的基本介紹
  • 2.有效的路由方法
  • 3.路由重定向
  • 4.路由參數
  • 5.路由分組
  • 6.兜底路由
  • 7.頻率限制
  • 8.獲取當前訪問路由屬性

在使用laravel之前我一直在使用thinkphp還有yii框架,這兩個框架也有路由這一說,但是都沒有用過。

Laravel的路由功能其實還是挺全的,也很優雅~

下面來說正題:

1.路由的基本介紹

Laravel框架默認為我們提供了兩個路由文件,在根目錄下的routes目錄下有web.php以及api.php。這些文件通過框架自動加載,相應邏輯位于 app/Providers/RouteServiceProvider 類。routes/web.php 文件定義了 Web 界面的路由,這些路由被分配到了 web 中間件組,從而可以使用 Session 和 CSRF 保護等功能。routes/api.php 中的路由是無狀態的,這是因為被分配到了 api 中間件組。

一般情況下,我們都會使用web.php來開始定義路由。定義在 routes/web.php 中的路由可以通過在瀏覽器地址欄輸入相應的 URL 進行訪問,例如,你可以通過 blog.test/user 訪問下面的路由:

Route::get("/user", "UsersController@index");

正如前面所提到的,定義在 routes/api.php 文件中的路由通過 app/Providers/RouteServiceProvider 的處理被嵌套在一個路由群組中, 在這個群組中,所有路由會被自動添加 /api 前綴,所以你不需要再到路由文件中為每個路由手動添加,你可以通過編輯 RouteServiceProvider 類來修改路由前綴以及其他的路由群組選項:

/**
     * Define the "api" routes for the application.
     *
     * These routes are typically stateless.
     *
     * @return void
     */
    protected function mapApiRoutes()
    {
Route::prefix("api")
    ->middleware("api")
    ->namespace($this->namespace)
    ->group(base_path("routes/api.php"));
    }

2.有效的路由方法

我們可以注冊路由來響應任何 HTTP 請求動作:

Route::get($uri, $callback);
Route::post($uri, $callback);
Route::put($uri, $callback);
Route::patch($uri, $callback);
Route::delete($uri, $callback);
Route::options($uri, $callback);

3.路由重定向

如果你需要定義一個重定向到其他 URI 的路由,可以使用 Route::redirect 方法,該方法非常方便,以至于你不需要再定義額外的路由或控制器來執行簡單的重定向邏輯:

Route::redirect("/here", "/there");

其中 here 表示原路由,there 表示重定向之后的路由。默認情況下,Route::redirect 返回 302 狀態碼,你可以使用可選的第三個參數來自定義這個狀態碼:

Route::redirect("/here", "/there", 301);

你還可以使用 Route::permanentRedirect 方法來返回 301 狀態碼:

Route::permanentRedirect("/here", "/there");

4.路由參數

(1):必選參數

單個參數

Route::get("user/{id}", function ($id) {
    return "User " . $id;
});

多個參數

Route::get("posts/{post}/comments/{comment}", function ($postId, $commentId) {
    return $postId . "-" . $commentId;
});

(2):可選參數

Route::get("user/{name?}", function ($name = null) {
    return $name;
});

5.路由分組

(1):中間件路由分組

要給某個路由分組中定義的所有路由分配中間件,可以在定義分組之前使用 middleware 方法。中間件將會按照數組中定義的順序依次執行:

Route::middleware(["first", "second"])->group(function () {
    Route::get("/", function () {
// Uses first & second Middleware
    });
  
    Route::get("user/profile", function () {
// Uses first & second Middleware
    });
});

(2):路由前綴

prefix 方法可以用來為分組中每個路由添加一個給定 URI 前綴,例如,你可以為分組中所有路由 URI 添加 admin 前綴 :

Route::prefix("admin")->group(function () {
    Route::get("users", function () {
// Matches The "/admin/users" URL
    });
});

6.兜底路由

使用 Route::fallback 方法可以定義一個當所有其他路由都未能匹配請求 URL 時所執行的路由。通常,未處理請求會通過 Laravel 的異常處理器自動渲染一個「404」頁面,不過,如果你在 routes/web.php 文件中定義了 fallback 路由的話,所有 web 中間件組中的路由都會應用此路由作為兜底,當然,如果需要的話,你還可以添加額外的中間件到此路由:

Route::fallback(function () {
    //
});

7.頻率限制

Laravel 自帶了一個中間件用于限制對應用路由的訪問頻率。開始使用該功能之前,分配 throttle 中間件到某個路由或路由分組,throttle 中間件接收兩個參數用于判斷給定時間內(單位:分鐘)的最大請求次數。例如,我們指定登錄用戶每分鐘只能訪問下面的分組路由 60 次:

Route::middleware("auth:api", "throttle:60,1")->group(function () {
    Route::get("/user", function () {
//
    });
});

超出訪問次數后,會返回 429 狀態碼并提示「Too many requests」。

動態頻率限制

此外,還可以基于 User 模型的屬性來動態設置最大請求次數。例如,如果 User 模型包含 rate_limit 屬性,就可以將其這個屬性名傳遞到 throttle 中間件,這樣就可以將屬性值作為計算最大請求次數的數據來源:

Route::middleware("auth:api", "throttle:rate_limit,1")->group(function () {
    Route::get("/user", function () {
//
    });
});

8.獲取當前訪問路由屬性

你可以使用 Route 門面上的 current、currentRouteName 和 currentRouteAction 方法來訪問處理當前輸入請求的路由信息:

// 獲取當前路由實例
$route = Route::current();
// 獲取當前路由名稱
$name = Route::currentRouteName();
// 獲取當前路由action屬性
$action = Route::currentRouteAction();

到此這篇關于PHP laravel實現基本路由配置詳解的文章就介紹到這了,更多相關PHP laravel路由配置內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!

標簽: PHP
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩二区在线观看| 国产欧美日韩一级| 日韩免费高清| 国产精品av一区二区| 免费欧美一区| 国产精品色网| 亚洲精品福利| 国产精品jk白丝蜜臀av小说| 久久这里只有| 久久高清免费| 色8久久久久| 国产精品久久久久久久久久妞妞 | 中文字幕在线高清| 黄色av日韩| 国产精品亚洲产品| 欧美sss在线视频| 日韩在线视频一区二区三区| 精品久久97| 视频一区二区中文字幕| 精品国产一区二区三区av片| 欧美亚洲国产激情| 国产精品男女| 婷婷综合在线| 欧美经典一区| 91精品一区国产高清在线gif| 亚洲伊人影院| 中国字幕a在线看韩国电影| 石原莉奈在线亚洲三区| 麻豆成人在线观看| 日韩在线一二三区| 国产成人精品一区二区三区免费| 亚洲资源av| 国产中文在线播放| 日韩高清三区| 91久久国产| 欧美好骚综合网| 日韩激情av在线| 免费视频一区三区| 欧美成a人片免费观看久久五月天| 97精品在线| 免费在线日韩av| 国产欧美精品久久| 亚洲精品福利| 在线精品一区二区| 欧美日韩激情| 日韩精品一区二区三区免费观看| 欧美激情日韩| 久久精品99国产精品| 亚洲bt欧美bt精品777| 欧美综合国产| 久久国产精品亚洲77777| 亚洲激情黄色| 伊人成人网在线看| 国产一区二区三区四区五区传媒| 一区免费视频| 欧美在线网站| 亚洲欧美日韩国产一区| 性色一区二区| 日精品一区二区三区| 日韩av不卡一区二区| 日本99精品| 国产激情精品一区二区三区| 国产精品一区二区三区av| 久久久91麻豆精品国产一区| 精品福利久久久| 日韩一区亚洲二区| 欧美精品一区二区三区精品| 免费成人在线影院| 国产精品网站在线看| 欧美一级全黄| 国产精品丝袜在线播放| 黄色aa久久| 欧美高清一区| 日韩精品亚洲专区| 精品资源在线| 欧美在线影院| 国产精品一页| 久久精品亚洲欧美日韩精品中文字幕| 午夜日韩av| 麻豆精品视频在线观看免费| 91精品亚洲| 国产亚洲一区| 激情婷婷欧美| 久久的色偷偷| 久久国产电影| 日韩高清在线不卡| 久久精品亚洲欧美日韩精品中文字幕| 99精品99| 日韩成人a**站| 亚洲欧美在线专区| 久久久91麻豆精品国产一区| 欧美综合国产| 亚洲精品.com| 久久不卡国产精品一区二区| 欧美aa一级| 美女视频黄久久| 日本h片久久| 国产精品日韩欧美一区| 国产精品v一区二区三区| 国产亚洲一区二区手机在线观看 | 美女国产一区二区三区| 亚洲深深色噜噜狠狠爱网站 | 激情婷婷综合| 亚洲三级欧美| 精品美女久久| 日本亚洲视频在线| 久久天堂成人| 亚洲黄色免费av| 国产亚洲欧美日韩精品一区二区三区 | 88久久精品| 亚洲精品少妇| 日韩中文字幕无砖| 亚洲日韩中文字幕一区| 不卡在线一区二区| 红桃视频欧美| 亚洲欧美日韩国产一区| 亚洲精品国产偷自在线观看| 97精品国产| 国产精品sss在线观看av| 日韩成人在线看| 欧美亚洲综合视频| 日本aⅴ精品一区二区三区 | 国产精品久久久久久久免费观看 | 日韩一区精品视频| 欧美国产日韩电影| 亚洲精品国产精品粉嫩| 亚洲精品午夜av福利久久蜜桃| 麻豆一区二区99久久久久| 午夜精品福利影院| 无码日韩精品一区二区免费| 国产精品一区二区三区美女 | 久久激情中文| 天堂久久av| 亚洲欧洲专区| 中文字幕日韩欧美精品高清在线| 久久国产欧美| 色在线视频观看| 欧美a在线观看| 国产精品久久久久久久久免费高清 | 日韩精品亚洲专区| 香蕉久久精品| 日韩视频久久| 国产日韩综合| 成人欧美一区二区三区的电影| 国产精品久久| 欧美激情麻豆| 国产一区国产二区国产三区| 国产精品传媒麻豆hd| 麻豆精品在线播放| 日韩美女一区二区三区在线观看| 国产va在线视频| 亚洲天堂av影院| 亚洲欧美日本视频在线观看| 国产麻豆一区二区三区| 欧美国产不卡| 六月婷婷综合| 激情丁香综合| 国产欧美一区| 国产情侣久久| 久久av影院| 91精品一区二区三区综合在线爱| 日韩精选在线| 久久婷婷一区| 国产日本亚洲| 久久九九国产| 日韩欧美美女在线观看| av一区在线| 午夜久久av| 久久精品成人| 欧美日韩1区| 欧美综合另类| 久久精品99国产国产精| 欧美日韩第一| 国产精品亚洲人成在99www| 日韩精品不卡一区二区| 国产精品中文| 综合激情五月婷婷| 日韩欧美国产精品综合嫩v| 无码日韩精品一区二区免费| 久久伦理在线| 激情黄产视频在线免费观看| 色8久久久久| 激情欧美一区二区三区| 成人午夜网址| 精品国产一区二区三区噜噜噜| 久久xxxx| 久久午夜影视| 久久久精品网| 国产精品一区二区精品| 免费欧美日韩| 亚洲精品小说| 日韩网站在线| 亚洲免费观看| 亚洲激情社区| 欧美福利一区| 亚洲成人一区在线观看| 蜜桃成人精品| 尤物tv在线精品| 欧美精选一区二区三区| 女同性一区二区三区人了人一|