- 利用node的
require模块进行api的自动化生成 - 微信公众号的授权
- 企业公众号的用户信息
- 非企业公众号的用户信息
- 微信小程序授权
- 文件上传功能
- 七牛csdn
Token上传 - mysql快速配置
- 采用sequelize快速操作sql语句
- 全局的
token拦截 - 采用异步的方式封装了
request模块 - 采用
apidoc自动化生成api文档
- api
- api文件存放位置
- mysql
- mysql相关配置
- middleware
- 中间件
- db
sequelize模型定义
- utils
- 工具库
api/common文件夹下新建一个ts文件,采用export导出一个functionapi/common/router/index.ts内新增xxx: { type: 'get' }
以下是实例,我在common内需要新增一个名为demo的api
api/common/demo.ts内容
export = (req: any, res: any) => {
res.send({
code: 200
})
};
api/common/router/index.ts内容
export = {
demo: { type: 'get' }
}
这样子就能在浏览器里面输入ip/common/demo进行访问了,如果请求为POST则讲type改成POST即可
接回上面的教程,除了type选项,还有一个名为verifyValue的选项,用于配置该api的非空校验,default为该字段的默认值,详情查看api/common/router/index.ts里面的demo路由
在api文件里面的req进行了封装过滤,如果是GET请求req返回为req.query,如果请求方式为POST req则会返回req.body,在运行项目的时候可以尝试输出req进行查看
如果想去掉这个返回可以去api/index.ts修改query与body的返回
- 在
api目录下新建一个文件夹,在该文件下面新建一个名为router的文件夹,在该router文件夹下,新建index.ts - 在
api/index.ts下的routerMap变量,新增一个名为第一步文件夹名的字符串
下面是注册流程
在api下新建了一个名为common,最终他的文件目录是这样子的api/common/router/index.ts
在api/index.ts的routerMap数组内,新增了一个common字符串,这样子就已经注册完一个指向common的路由了,可进行添加aip的操作了
微信公众号相关文件在api/wx目录下,可在api/wx/router查看各个文件的作用
微信公众号相关文件在api/applets目录下,可在api/applets/router查看各个文件的作用
微信公众号相关文件在api/qiniu目录下,可在api/qiniu/router查看各个文件的作用
微信公众号相关文件在api/common目录下,可在api/common/router查看各个文件的作用
配置上述的敏感密钥以及相关配置可在utils/config.ts配置
npm install -g express-generator
npm install -g typescript
npm install @types/node --save-dev
npm install @types/express --save-dev
npm install ts-node -g
npm install nodemon -g
npm i
npm run dev
npm run build
api文档生成采用的是apidoc,官方文档
npm i apidoc -g
npm run doc