背景
最近在开发一个个人博客系统。简而言之,博客的核心功能就是撰写文章——但有过实战经验的开发者都清楚,仅有编辑器远远不够,完善的后台管理才是保障内容高效产出的关键。因此,为这套管理系统编写后端接口自然被提上了日程。
上传接口
一篇优质博客通常需要图文并茂。因此,首先需要实现图片上传接口。实现代码如下:
const express = require('express');
const server = express();
const fs = require('fs');
const multer = require('multer');
const bodyParser = require('body-parser');
// 配置静态资源文件
server.use(express.static(__dirname + "/public"));
server.use(bodyParser.urlencoded({ extended: false }));
server.use(multer({ dest: '/tmp/' }).array('file'));
const SA VE_BASE_PATH = `${__dirname}/public/`;
// 封装单文件存储函数
const sa veFile = (file) => {
const { originalname, path } = file;
return new Promise((resolve, reject) => {
const fileUrl = `${SA VE_BASE_PATH}${originalname}`;
fs.readFile(path, (err, result) => {
fs.writeFile(fileUrl, result, (err => {
if (err) {
reject(err);
} else {
resolve(originalname);
}
}));
});
});
};
server.post('/blog/image/upload', async (req, res) => {
const filenames = await Promise.all(req.files.map(sa veFile));
const response = {
message: 'File uploaded successfully',
filenames
};
res.send(response);
});
server.listen(3006, err => {
err ? console.log(err) : console.log('server https:127.0.0.1:3006');
});
使用 Postman 调试上传接口
接口编写完成后,需要进行调试。Postman 是大多数开发者的首选工具。其操作流程非常标准:
- 第一步:填写请求 URL 地址
- 第二步:选择请求类型(如 POST)
- 第三步:选择需要上传的文件
- 第四步:点击发送按钮发起请求
- 第五步:查看服务器返回的响应结果

Postman 不支持多文件上传?
然而在实际使用中,发现一个相当困扰的问题:Postman 并不支持同时上传多个文件。一篇博客往往需要插入多张图片,十几张甚至更多的情况也很常见。逐一上传,效率非常低下。
Apifox 支持多文件上传
因此,我们转而使用 Apifox。其操作流程与 Postman 几乎相同,但它原生支持多文件批量选择上传,这一点至关重要:
- 第一步:填写请求 URL 地址
- 第二步:选择请求类型(如 POST)
- 第三步:选择需要上传的文件(支持多文件批量选择)
- 第四步:点击发送按钮发起请求
- 第五步:查看服务器返回的响应结果

总结
经过一番尝试,图片上传接口终于顺利调试通过。Apifox 在保持与 Postman 类似使用习惯的同时,弥补了其在多文件上传方面的不足,一次性解决了这一痛点。

知识扩展:更多 Postman 使用技巧
- 提升工作效率:使用 Postman 实现批量请求管理
- 使用 Postman 发送 Post 请求上传文件的完整指南
