### 路由定義
<br>
路由的配置文件統一寫在 ``route`` 目錄下,統一導出一個函數,路由配置寫在這個函數內
```
module.exports = (route) => {
// 分組,無中間件的一組GET和POST路由
route.group('/api/v1',(router) => {
router.get('/hello','hello/sayHello')
router.post('/world','hello/sayWorld')
})
// 未分組,無中間件的GET路由
route.get('/','hello/homeList')
}
```
<br>
> ### GET 路由
```
route.get('<路由地址>','<控制器文件名稱>/<控制器方法名稱>')
```
<br>
> ### POST 路由
```
route.post('<路由地址>','<控制器文件名稱>/<控制器方法名稱>')
```
<br>
> ### 控制器分級寫法
```
route.post('<路由地址>','<文件夾名稱/控制器文件名稱>/<控制器方法名稱>')
```
<br>
> ### 分組路由
```
route.group('<分組前綴名>',(router) => {
router.get('<路由地址>','<控制器文件名稱>/<控制器方法名稱>')
router.post('<路由地址>','<控制器文件名稱>/<控制器方法名稱>')
})
```
<br>
> ### 使用路由中間件
```
const checkLogin = require('@/middleware/checkLogin.js')
// 路由配置
module.exports = (route) => {
// 在普通路由上掛載路由中間件
route.post('<路由地址>','<控制器文件名稱>/<控制器方法名稱>',checkLogin)
// 在分組路由上掛載路由中間件,整個分組內的路由都會通過這個中間件
route.group('<分組前綴名>',(router) => {
router.get('<路由地址>','<控制器文件名稱>/<控制器方法名稱>')
},checkLogin)
})
```
互相搭配可以有多種寫法
- 序言
- 新手指南
- 安裝
- 開發規范
- 目錄結構
- 配置
- 路由
- 路由定義
- 路由中間件
- 控制器
- 控制器定義
- 內置showSuccess方法
- 內置ApiException方法
- 參數獲取器getParams
- 網絡請求器Fetch
- 內置工具函數
- JWT的使用
- 驗證
- 驗證器
- 驗證規則
- 自定義驗證規則
- 混合驗證規則
- 分場景驗證
- 數據庫
- 連接數據庫
- 查詢數據
- 鏈式操作
- where
- whereOr
- whereBetweenTime
- limit
- page
- count
- order
- field
- alias
- group
- distinct
- 添加數據
- 更新數據
- 刪除數據
- 聯表查詢
- SQL調試
- 模型
- 視圖
- 模板渲染(廢棄)
- 模板變量(廢棄)
- 錯誤和日志
- 異常處理
- 日志處理
- 命令行
- 擴展庫
- 使用Redis
- get
- set
- del
- hget
- hset
- hdel
- decrby
- incrby
- rpush
- rpop
- 使用MongoDB
- 模型
- 新增
- 刪除
- 修改
- 查詢
- 使用ElasticSearch
- 使用阿里云OSS
- 阿里短信服務
- 微信支付
- 支付寶支付
- 部署
- 更新日志