gpt4 book ai didi

javascript - 在nodejs中使用Multipart上传文件失败

转载 作者:搜寻专家 更新时间:2023-10-31 23:30:33 26 4
gpt4 key购买 nike

我正在尝试使用 multipart 在 Node js 中上传文件,但出现无法发布错误?我是 Node js 的新手。所以你能帮我解决我做错的事吗我的代码?HTML

<form id   = "uploadForm"
enctype = "multipart/form-data"
action = "/api/uploadfile"
method = "post">
<input type="file" name="fileUpload"/>
<input type="submit" value="Upload File" name="submit">
</form>

服务器.js

var express  = require('express');
var app = express();
var multer = require('multer');
app.use(express.static(__dirname));
app.get('/', function(request, response){
response.sendFile("./index.html");
});

var storage = multer.diskStorage({
destination: function (req, file, callback) {
callback(null, './uploads');
},
filename: function (req, file, callback) {
callback(null, file.fieldname + '-' + Date.now());
}
});
var upload = multer({ storage : storage}).single('fileUpload');


app.post('/api/uploadfile',function(req,res){
upload(req,res,function(err) {
if(err) {
return res.end("Error uploading file.");
}
res.end("File is uploaded");
});
});


app.listen(8080);
console.log("App listening on port 8080");

错误信息如下:

Error uploading file

最佳答案

我试过你的代码,它在这里工作。原因可能是,

1)你错过了表单标签的关闭

<html>
<form id = "uploadForm"
enctype = "multipart/form-data"
action = "/api/uploadfile"
method = "post"
>
<input type="file" name="fileupload" />
<input type="submit" value="Upload file" name="submit">
</form>
</html>

2) 确保你有一个名为 -> uploads 的文件夹

关于javascript - 在nodejs中使用Multipart上传文件失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37582810/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com