日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

三、Express 路由

發布時間:2024/7/5 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 三、Express 路由 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、路由

路由是指應用程序的端點(URI)如何響應客戶端請求.

你可以使用app與HTTP方法相對應的Express對象的方法來定義路由.
例如,app.get()處理GET請求和app.post POST 請求。
你還可以使用app.all()處理所有HTTP方法,并使用app.use()將中間件指定為回調函數.

這些路由方法指定在應用程序收到對指定路由(端點)和HTTP方法的請求時調用的回調函數(有時稱為“處理函數”)。換句話說,應用程序“偵聽”與指定的路由和方法匹配的請求,并且當它檢測到匹配項時,它將調用指定的回調函數。

實際上,路由方法可以具有多個回調函數作為參數。對于多個回調函數,重要的是提供next回調函數的參數,然后next()在函數體內調用以將控制權移交給下一個回調。

以下代碼是一個非常基本的路由示例。

二、路由方法

路由方法是從HTTP方法之一派生的,并附加到express該類的實例。

以下代碼是為GET和POST方法定義的到應用根目錄的路由的示例。

Express 支持與所有HTTP 請求方法相對應的方法:get,post等。有關完整列表,請參見app.METHOD。

有一種特殊的路由方法,app.all()用于為所有HTTP請求方法的路徑加載中間件功能。
例如,無論是使用GET,POST,PUT,DELETE 還是http模塊支持的任何其他HTTP請求方法,都會對路由/secret的請求執行以下處理程序。

三、路由路徑

路由路徑與請求方法結合,定義了可以進行請求的端點.

路由路徑可以是字符串,字符串模式或正則表達式.
字符?,+,*,和()是他們的正則表達式的對應的子集.
連字符(-)和點(.)由基于字符串的路徑按字面意義進行解釋.

如果你需要在路徑字符串中使用美元字符(),請將其轉義([并括在和中]).
例如,"/data/$book"處用于請求的路徑字符串將為"
/data/([$])book".








四、路徑參數

路由參數被命名為URL段,用于捕獲URL中在其位置處指定的值。捕獲的值將填充到req.params對象中,并將路徑中指定的 route參數的名稱作為其各自的鍵。

要使用路由參數定義路由,只需在路由路徑中指定路由參數,如下所示。




五、路由處理程序

您可以提供行為類似于中間件的多個回調函數來處理請求。唯一的例外是這些回調可能會調用next(‘route’)以繞過其余的路由回調。您可以使用此機制在路由上施加先決條件,然后在沒有理由繼續使用當前路由的情況下將控制權傳遞給后續路由。
路由處理程序可以采用函數,函數數組或二者組合的形式,如以下示例所示。
單個回調函數可以處理路由。例如:

多個回調函數可以處理一條路由(請確保指定了next對象)。例如:

回調函數數組可以處理路由。例如:

獨立功能和功能數組的組合可以處理路由。例如:

六、應對方法

res下表中響應對象()上的方法可以將響應發送到客戶端,并終止請求-響應周期。如果沒有從路由處理程序調用這些方法,則客戶端請求將被掛起。

七、app.route()

可以使用來為路由路徑創建可鏈接的路由處理程序app.route()。
由于路徑是在單個位置指定的,因此創建模塊化路由非常有幫助,減少冗余和錯別字也很有幫助。

這是使用定義的鏈式路由處理程序的示例app.route()。

八、快速路由器

使用express.Router該類創建模塊化的,可安裝的路由處理程序。一個Router 實例是一個完整的中間件和路由系統;因此,它通常被稱為“迷你應用程序”。
以下示例將路由器創建為模塊,在其中加載中間件功能,定義一些路由,并將路由器模塊安裝在主應用程序的路徑上。

總結

以上是生活随笔為你收集整理的三、Express 路由的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。