开发中经常需要编写一些服务器测试脚本,测试自己的应用,且一些第三方服务器应用也可以基于noejs部署到服务器,学习基本的nodejs编程是有必要的。
nodejs编写服务端接口,用koa做主要框架,加入一些必要的中间件,并进行RESTful架构,搭建一个脚手架,项目地址 https://github.com/blackist/node-koa-restful
Quick Start
clone此项目,项目结构如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| ├─.gitignore ├─controller.js ├─package-lock.json ├─package.json ├─README.md ├─server.js ├─service | └UserService.js ├─model | └User.js ├─controller | ├─UserController.js | ├─upload | | └UploadController.js ├─conf | └db.js ├─common | ├─UploadFile.js | ├─util | | └response.js | ├─error | | ├─error-code.js | | ├─error-common.js | | └error-msg.js
|
建立名为node-koa的MySQL数据库,可先修改数据库配置信息,在。conf/db.js里,配置信息如下:
1 2 3 4 5 6 7 8 9 10 11
| module.exports = new Sequelize('node-koa', 'root', 'root', { host: '127.0.0.1', dialect: 'mysql', pool: { max: 20, min: 0, idle: 10000 } })
|
进入项目目录运行
1 2 3 4 5 6 7 8 9
| # Command line cd project directory cd node-koa-restful
# install dependencies npm install
# node run node server.js
|
初始化日志如下
接口访问 http://localhost:8080/v1/users/ids
框架解析
koa-router
koa-router作为请求转发路由