【node】如何开发一个生成token的接口
作为一名老前端人员,在平常的开发中经常接触到node,可谓是对node基础用法已经老烂熟于心了。一直都说node对于前端来说是需要掌握的一门后端语言,很多前端人学习后端语言首选的就是node。虽然平常接触很多遍node,但是
但是你要问我它的接口是如何写的,数据库是如何链接的,token是如何生成的,我可是答不出来的。
今天就浅浅的了解一下node的一些基础的用法
本文的重点
- 如何初始化一个Node项目结构
- 如何创建http请求接口,例如登录与注册
- 如何将接口与数据库进行链接
1 初始化
1.1 项目基本结构
新建文件夹作为目录,在项目目录中运行如下代码:
npm init -y
1.2 安装express
npm i express@4.17.1
1.3 在目录中新建app.js文件作为整个项目的入口
const express=require('express');
const app=express();app.listen(3007,()=>{console.log('server running at http://127.0.0.1:3007')
})
1.4 配置cors跨域
安装
npm i cors@2.8.5
导入并配置cors中间件
// 导入cors中间件
const cors=require('cors')
//将cors注册为全局中间件
app.use(cors)
配置解析表单的中间件
app.use(cors.urlencoded({extened:false}))
1.5 路由初始化
在项目根目录新建router文件夹,用来存放所有的 路由模块。
路由模块中,只存放客户端的请求与处理函数之间的映射关系
在项目根目录中,新建 router_handler 文件夹,用来存放所有的 路由处理函数模块。
路由处理函数模块中,专门负责存放每个路由对应的处理函数
在./router/user.js
文件中,存放请求与函数的映射关系
const express = require('express')const router = express.Router()// 应用路由处理函数
const user = require('../router_handler/user')
// 使用处理函数
router.post('/getUser',user.getUser)module.exports = router
在./router_handler/user.js
文件中,存放路由的处理函数
exports.getUser = (req,res)=>{res.send('Api is OK')
}
在app.js
文件中,引入并注册 路由模块
const express = require('express')
const app = express();// 引入路由
const userRouter = require('./router/user')
// 使用路由
app.use(userRouter)
补充:
NODE项目启动方式有很多,常用的就是 node xxx.js 来启动项目
但是在这里,推荐另一种启动方式:nodemon xxxx.js
nodemon它能自动监视文件变化并重启应用,显著提升开发效率。
安装
npm i nodemon
使用
nodemon app.js
2 登录与注册
2.1 安装并配置mysql 模块
在api接口项目中,需要安装并配置mysql 这个第三方模块,来链接和操作 mysql数据库
- 安装mysql模块
npm i mysql@2.18.1
- 在项目跟目录中新建/db/index.js文件 在此自定