1. 准备环境
Nodejs 版本 v18.12.1, yarn 版本 1.22.21
2. 初始化项目
创建项目目录 express_demo01,进入目录,执行命令
npm init -y
生成 package.json 文件
圈起来的那一行修改为上图所示。使用 npm run dev 即可启动项目。
安装express 和 body-parser 的依赖,执行如下命令:
yarn add express
yarn add body-parser
安装完成,项目目录结构如下:
3. 编写代码
在app.js 文件中写逻辑代码
const express = require('express');
const bodyParser = require('body-parser');const app = express();
app.use(bodyParser.json());// 配置跨域
app.all('*', (req, res, next) => {res.header('Access-Control-Allow-Origin', '*');res.header('Access-Control-Allow-Methods', 'GET,POST');res.header('Access-Control-Allow-Headers', 'Content-Type,Authorization');next();
});//get 请求
app.get('/getList', (req, res) => {console.log(req.query);console.log(req.query.name);console.log(req.query['pwd']);res.status(200).json({msg: 'ok',data: {token: 'abcde'}});
})// post请求
app.post('/login', (req, res) => {console.log(req.body);const {username, password} = req.body;res.status(200).json({msg: 'ok',data: {userInfo: {username: username,password: password},token: 'abcde'}})
})// 监听8080端口
app.listen(8080, () => {console.log("ok");
})
编写完成,保存,命令行执行 npm run dev 即可启动服务。
1)get 请求获取参数
调用 req.query方法,返回请求参数对象。
使用 req.query.xxx, xxx为参数名。即可获取请求参数。
2)post 请求获取参数
调用 req.body 方法,返回请求参数对象。
结构对应的参数值:
const {username, password} = req.body;
3)获取请求头参数
postman中在请求头中设置参数
获取请求头参数 Authorization
const authorization = req.headers["authorization "];
const authorization = req.get('authorization');
两种方式均可,注意获取时要使用小写字母。
4. 模块优化
将接口(路由)的逻辑代码分离到独立的文件中 。
新建目录routes,在routes目录中新建 index.js 文件。文件内容如下
module.exports = function (app) {// post请求app.post('/login', (req, res) => {console.log(req.body);const {username, password} = req.body;res.status(200).json({msg: 'ok',data: {userInfo: {username: username,password: password},token: 'abcde'}})})//get 请求app.get('/getList', (req, res) => {console.log(req.query);console.log(req.query.name);console.log(req.query['pwd']);res.status(200).json({msg: 'ok',data: {token: 'abcde'}});})}
然后再在 app.js 文件中引入 routes\index.js