@jl15988/node-action
v0.0.1-alpha.17
Published
A Nodejs server helper.
Downloads
138
Maintainers
Readme
node-action
介绍
利用 node 快速构建高可用、高效率、高健全的 server
安装
npm install @jl15988/node-action
简单使用
index.js
const {nodeAction, Action, actionInterceptor} = require("@jl15988/node-action");
const userInfo = {
"id": 1,
"username": "admin",
"nickname": "管理员",
"email": "[email protected]",
"mobile": "15612345678",
"sex": 1,
"avatar": null,
"loginIp": "192.168.0.8",
"loginDate": 1731468594935,
"createTime": 1609837427000,
"roles": [
{
"id": 1,
"name": "超级管理员"
},
{
"id": 2,
"name": "普通角色"
}
],
"dept": null,
"posts": [
{
"id": 1,
"name": "董事长"
}
],
"socialUsers": []
}
// 创建用户控制器
const UserAction = new Action('UserAction', (action) => {
// 设置 user action 的路由前缀
action.mapping('/user')
// 获取用户信息接口
action.get('/get', (requestInfo) => {
// 请求参数
console.log(requestInfo.params)
// 返回用户信息
return userInfo
})
// 修改用户信息接口
action.post('/update', (requestInfo) => {
// 请求体
console.log(requestInfo.body)
// 返回修改结果
return {
code: 200,
message: '修改成功'
}
})
})
const interceptors = [{
// 拦截器名
name: 'onLoad',
// 执行排序,如果重复则按添加的顺序,没有顺序的优先级最低
sort: 0,
// 解析路由之前的拦截器
load: (requestInfo, response) => {
return true
},
// 执行路由处理方法之前的拦截器
before: (requestInfo, response, routeInfo) => {
return true
},
// 执行路由处理方法之后的拦截器
after: (requestInfo, response, routeInfo, handleResult) => {
return true
}
}]
// 统一异常处理器
nodeAction.actionErrorHandler = (request, response, error) => {
console.error(error)
}
// 统一返回数据处理器
nodeAction.actionResultHandler = (request, response, res) => {
console.log(res)
return res
}
nodeAction
// 控制器
.actions([UserAction])
// 拦截器
.interceptors(interceptors)
// 端口号
.port(3000)
// 启动
.start()
执行 node src/index.js
启动
浏览器访问:http://{本地地址}:3000/user/get