Web開發中的"路由"是什麼意思?

路由是為了解決什麼問題?


在web開發中,「route」是指根據url分配到對應的處理程序。


路由什麼意思?

樓上都回答的挺好,原理和路由器原理相同,我就簡單概述下:不同的請求地址會交給路由處理來轉發給相應的控制器處理,所以說路由就可以在轉發前修改轉發地址,你可以在這上面大作文章。

為什麼要使用路由?

傳統web開發是每一個請求地址都會請求伺服器來進行處理,但是用戶有些操作則無需請求伺服器,直接頁面端修改下邏輯就能達到目的,這種最好使用路由,也許題主會有疑問:直接使用js處理下不就行了。使用js直接處理這些是可以的,事實上以前我們也這麼做,但是這樣做不便於用戶收藏當前頁,因為使用js時並不更新url,但是使用路由時,url也是隨著改變的,用戶瀏覽到一個網頁時可以直接複製或收藏當前頁的url給別人,這種方式對於搜索引擎和用戶來說都是友好的。


進分路由就把最後一個1改為分路由的地址最後一個數字,比如106 104 103等等,賬戶密碼應該都是一樣的


?路由——url的分層解析。

?第一層 解析到伺服器目標機器。這個通常是域名或ip。

?第二層 解析到伺服器的特定資源文件。這個通常是pathinfo。

?第三層 解析特定資源的特定狀態。包含在pathinfo參數中。

?主要是伺服器,資源文件,特定狀態定位。


NodeJs中使用Express框架搭建靜態web伺服器,用到了route,比如app.get(正則表達式,require(./jsRoute.js)),如果正則匹配成功就會交給jsRoute處理,多個這樣的語句分別處理,這就是簡單的路由。


就是在找到目的地。

路由器里根據目標IP,找到中間需要經過的路由器路徑。

Web里根據網址找到能處理這個URL的程序或模塊。


處理函數和URL的關係


抽象點說就是:為 http request 中的 path_uri 與執行腳本做綁定(映射)!

所謂的執行腳本,就是一段處理業務邏輯的代碼,執行腳本可以是 php,java,js 等!

舉個例子,在 MVC 結構中,route 的會將 uri 映射到 controller,具體業務邏輯在 controller 李進行。


網路原理中,路由指的是根據上一介面的數據包中的IP地址,查詢路由錶轉發到另一個介面,它決定的是一個端到端的網路路徑。

web里的話,路由概念也是類似的,根據URL來將請求分配到指定的一個『端』,另外也可以這樣用,在某一個節點設置個轉發,將到達這裡的每一個』包『或者說URL重新定向到另一個端並且可以在這個過程中對這個包進行處理。比如說我點擊一個鏈接(URL)這個鏈接鏈接到A.html頁面,我們可以在這個過程中設置一個轉發,將這個鏈接定位到B.php,在這個節點中對A.html進行判斷,處理,比如攔截,重定向什麼的,還可以加一些參數再跳。

=====================================

初學,主觀理解了一下,有錯誤請指正。


推薦閱讀:

前端開發瓶頸?
CSS中為什麼overflow:hidden能清除浮動(float)的影響?原理是什麼?
webpack執行機制流程是怎麼樣的?
前端開發工作遇到瓶頸,不知何去何從?
如何搭建一個類似於 BrowserStack 的跨瀏覽器測試平台?

TAG:Web開發 | 前端開發 |