路由是應用開發中比較關鍵的一個環節,其主要作用包括但不限于:
* 讓URL更規范以及優雅;
* 隱式傳入額外請求參數;
* 統一攔截并進行權限檢查等操作;
* 綁定請求數據;
* 使用請求緩存;
* 路由中間件支持;
路由解析的過程一般包含:
* 路由定義:完成路由規則的定義和參數設置;
* 路由檢測:檢查當前的URL請求是否有匹配的路由;
* 路由解析:解析當前路由實際對應的操作;
* 路由調度:執行路由解析的結果調度;
掌握路由主要是要掌握路由定義及參數設置,其它環節是由系統自動完成的。
>[danger] 路由的主體規劃和定義應該盡可能在應用開發前完成,在后期可以進行路由的參數調整和規則增補。
## 路由定義
>[info] 路由規則的注冊是在應用的 `控制器` 文件中完成。路由定義和檢測是針對`所有端口`的,因此如果你不指定路由綁定的端口,那么路由地址會在所有端口上生效。
路由支持注解和配置文件的方式來配置,雖然支持配制文件制定,但是我們`強烈建議使用注解`方式,因為簡單,高效。
- 前言
- 捐贈ESD項目
- 使用篇-通用
- 環境
- 安裝
- 規范
- 壓力測試
- 配置
- 如何設置YML配置
- server配置
- 端口配置
- 項目結構
- 事件派發
- 日志
- 注解
- DI容器
- 自定義進程
- 并發及協程池
- Console插件
- Scheduled插件
- Redis插件
- AOP插件
- Saber插件
- Mysql插件
- mysql事務
- Actuator插件
- Whoops插件
- Cache插件
- PHPUnit插件
- Security插件
- Session插件
- EasyRoute插件
- http路由
- ProcessRpc插件
- AutoReload插件
- AnnotationsScan插件
- Tracing-plugin插件
- MQTT插件
- Pack插件
- AMQP插件
- Validate插件
- Uid插件
- Topic插件
- Blade插件
- CsvReader插件
- hashed-wheel-timer-plugin插件
- 使用篇-HTTP
- 路由
- 靜態文件
- 路由定義
- 修飾方法
- 路由分組
- 資源路由
- 端口作用域
- 異常處理
- 跨域請求
- 路由緩存
- 控制器
- 控制器初始化
- 前置操作
- 跳轉和重定向
- 異常處理
- 請求
- 請求對象
- 請求信息
- request消息
- response消息
- stream消息
- url接口
- 驗證器
- 內置驗證器
- 內置過濾器
- 使用篇-WS
- 如何使用
- 路由
- 使用篇-TCP
- 插件篇-PluginSystem
- 微服務篇-ESDCloud
- CircuitBreaker插件
- SaberCloud插件
- 分布式鏈路追蹤系統
- Consul插件