创建基本的服务器
javascript
复制代码
const express = require('express');
const indexRouter = require('./router'); // 引入路由
const app = express();
const port = 3000;
// 挂载路由
app.use('/api', indexRouter);
app.listen(port, () => {
console.log(`Server is running on http://localhost:${port}`);
});
创建路由文件
javascript
复制代码
const express = require('express');
const router = express.Router();
module.exports = router;
实现GET请求
javascript
复制代码
// 处理GET请求
router.get('/get', (req, res) => {
// 通过 req.query 客户端发送到服务器的数据
const query = req.query;
console.log(query, 'query')
res.send({
code: 0, // 0: 请求成功 -1: 请求失败
msg: 'GET请求成功', // 请求的状态描述
data: query, // 服务器像客户端返回数据
});
});
实现POST请求
javascript
复制代码
// 设置multer存储选项(这里只是演示,实际上你可能需要配置磁盘存储或其他选项)
const storage = multer.memoryStorage();
const upload = multer({ storage: storage });
javascript
复制代码
// 处理POST请求
router.post('/upload', upload.single('file'), (req, res) => {
// 通过 req.query 客户端发送到服务器的数据
const body = req.body;
console.log(body, 'body')
res.send({
code: 0, // 0: 请求成功 -1: 请求失败
msg: 'POST请求成功', // 请求的状态描述
data: body, // 服务器像客户端返回数据
});
});
方式2:urlencoded,想要获取url-encoded请求体的数据,需要引入对应的中间件。
javascript
复制代码
// 配置解析表单数据的中间件
app.use(express.urlencoded({extended: false}))
javascript
复制代码
// 处理POST请求
router.post('/post', (req, res) => {
// 通过 req.query 客户端发送到服务器的数据
const body = req.body;
console.log(body, 'body')
res.send({
code: 0, // 0: 请求成功 -1: 请求失败
msg: 'POST请求成功', // 请求的状态描述
data: body, // 服务器像客户端返回数据
});
});
全部代码
index.js
javascript
复制代码
const express = require('express');
const indexRouter = require('./router'); // 引入路由
const app = express();
const port = 3000;
// 配置解析表单数据的中间件
app.use(express.urlencoded({extended: false}))
// 挂载路由
app.use('/api', indexRouter);
// 启动服务器
app.listen(port, () => {
console.log(`Server is running on http://localhost:${port}`);
});
router.js
javascript
复制代码
const express = require('express');
const multer = require('multer');
const router = express.Router();
// 设置multer存储选项(这里只是演示,实际上你可能需要配置磁盘存储或其他选项)
const storage = multer.memoryStorage(); // 使用内存存储,适用于小文件或不需要持久化的场景
const upload = multer({ storage: storage });
// 处理GET请求
router.get('/get', (req, res) => {
// 通过 req.query 客户端发送到服务器的数据
const query = req.query;
console.log(query, 'query')
res.send({
code: 0, // 0: 请求成功 -1: 请求失败
msg: 'GET请求成功', // 请求的状态描述
data: query, // 服务器像客户端返回数据
});
});
// 处理POST请求
router.post('/upload', upload.single('file'), (req, res) => {
// 通过 req.query 客户端发送到服务器的数据
const body = req.body;
console.log(body, 'body')
res.send({
code: 0, // 0: 请求成功 -1: 请求失败
msg: 'POST请求成功', // 请求的状态描述
data: body, // 服务器像客户端返回数据
});
});
// 处理POST请求
router.post('/post', (req, res) => {
// 通过 req.query 客户端发送到服务器的数据
const body = req.body;
console.log(body, 'body')
res.send({
code: 0, // 0: 请求成功 -1: 请求失败
msg: 'POST请求成功', // 请求的状态描述
data: body, // 服务器像客户端返回数据
});
});
module.exports = router;