Web開發中的"路由"是什麼意思?
01-07
路由是為了解決什麼問題?
在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 的跨瀏覽器測試平台?