Koa2-TS/examples/dbs/mariadb/routers/addr.route.js

55 lines
1.0 KiB
JavaScript

// 一. 导入koa-router包
const Router = require('koa-router')
// 二. 实例化对象
const router = new Router({ prefix: '/address' })
// 中间件/控制器
const { auth } = require('../middleware/auth.middleware')
const { validator } = require('../middleware/addr.middleware')
const {
create,
findAll,
update,
remove,
setDefault,
} = require('../controller/addr.controller')
// 三. 编写路由规则
// 3.1 添加接口: 登录, 格式
router.post(
'/',
auth,
validator({
consignee: 'string',
phone: { type: 'string', format: /^1\d{10}$/ },
address: 'string',
}),
create
)
// 3.2 获取地址列表
router.get('/', auth, findAll)
// 3.3 更新地址
router.put(
'/:id',
auth,
validator({
consignee: 'string',
phone: { type: 'string', format: /^1\d{10}$/ },
address: 'string',
}),
update
)
// 3.4 删除地址
router.delete('/:id', auth, remove)
// 3.5 设置默认
router.patch('/:id', auth, setDefault)
// 四. 导出router对象
module.exports = router