嗨,伙计们,在使用 node js 将文件上传到服务器后,正在尝试将消息从服务器传输到客户端。正如您从代码中看到的那样,我正在使用 fetch 机制,并且在上传完成后重定向到同一页面,但同时也发送了上传已完成的消息。唯一的问题是我不知道如何在 index.html 中的完成 div 上显示此消息。感谢大家的帮助。
****服务器端代码***
var app = require('express')();
var http = require('http').Server(app);
var io = require('socket.io')(http);
var port = process.env.PORT || 3000;
const upload=require('express-fileupload')
app.use(upload())
app.get('/',(req, res)=>{
res.sendFile(__dirname + '/index.html');
});
app.post("/",(req, res)=> {
if (req.files) {
var file=req.files.file
var filename=file.name
console.log(filename);
file.mv('./uploads/'+filename,(err)=>{
if(err){
res.send(err)
}else{
const result="Song Uploaded";
res.redirect("/?"+result);
}
});
}
});
和客户端(index.html)
<form id="form" method="POST" action="/" encType="multipart/form-data">
<input id="files" type="file" name="file" ><br>
<input type="submit" value="Submit">
</form>
<div class="upload-post-result"></div>