diff --git a/.gitignore b/.gitignore index 64b4fe9..9c387af 100644 --- a/.gitignore +++ b/.gitignore @@ -42,4 +42,6 @@ yarn-error.log* *.sw? # mockm -httpData \ No newline at end of file +httpData +public/upload/** +!public/upload/*.gitkeep \ No newline at end of file diff --git a/mm.config.js b/mm.config.js index 92ee749..13503ec 100644 --- a/mm.config.js +++ b/mm.config.js @@ -4,12 +4,22 @@ * @type {import('mockm/@types/config').Config} */ module.exports = (util) => { + const port = 9000 return { + port, api: { - '/upload'(req, res) { - res.json({ - msg: `上传成功`, - url: util.libObj.mockjs.mock(`@image`), + async '/upload'(req, res) { + const multiparty = await util.toolObj.generate.initPackge(`multiparty`) + const form = new multiparty.Form({ + uploadDir: `./public/upload/`, + }) + form.parse(req, (err, fields = [], files) => { + const path = files.file[0].path.replace(/\\/g, `/`) + const url = `http://127.0.0.1:${port}/${path}` + res.json({ + msg: `上传成功`, + url, + }) }) }, }, @@ -21,6 +31,10 @@ module.exports = (util) => { { // 测试 gitee/github 部署 fileDir: `./dist`, path: `/md`, + },, + { // 访问公共目录 + fileDir: `./public`, + path: `/public`, }, ], } diff --git a/public/upload/.gitkeep b/public/upload/.gitkeep new file mode 100644 index 0000000..e69de29