【发布时间】:2020-09-06 10:25:05
【问题描述】:
我尝试制作一个 api 来使用 multer 中间件快速上传文件,但 request.file 未定义。
快递代码如下,
const express = require("express");
var multer = require('multer');
const cors = require("cors");
var app = express();
app.use(cors({ origin: true }));
const multerMid = multer({
storage: multer.memoryStorage(),
limits: {
fileSize: 5 * 1024 * 1024,
},
});
app.post('/saveFile', multerMid.single('dp'), (request,response)=>{
try{
var dp = request.file;
if(dp)
{
return response.send("file uploaded");
}
else{
return response.send("No file uploaded");
}
}catch(error)
{
return response.send(error.errorMessage);
}
});
exports.app = functions.https.onRequest(app);
没有上传文件
这是我使用以下 html 将文件发布到路由时总是收到的。
<html>
<head>
</head>
<body>
<form action = "<server>/saveFile" method="post" enctype="multipart/form-data">
<input type="file" name="dp"/>
<input type="submit" value="Save">
</form>
</body>
</html>
我需要将文件上传到 firebase 存储,这就是为什么我不在 multer 对象中使用静态存储位置的原因,
我卡住了,请帮忙。
【问题讨论】:
标签: express post file-upload multer