Так что я довольно новичок в программировании, и я прошу прощения, если мой код грязный.То, что я пытаюсь сделать, - это создать веб-сайт, на который люди смогут загружать сообщения и фотографии / видео.Это будет использоваться для моей свадьбы, и я хочу иметь возможность раздавать URL людям, чтобы они могли загружать все фотографии и видео, которые они сделали, плюс добавить приятное сообщение.Пока у меня есть работающий сервер, который использует multer, express и bodyParaser, и я могу загружать фотографии и видео, но не текст, который напечатан в «textarea».Чего мне не хватает, что позволило бы загружать то, что кто-то пишет в текстовой области, в виде файла .txt в ту же папку, в которую попадают мои фото и видео?
Мое дерево файлов настроено так: Weddingupload_test
Внешний интерфейс HTML
<form style="text-align: center;" action="/upload" enctype="multipart/form-data" method="POST">
<textarea class="textBox" name="message" rows="10" cols="50" placeholder="Share your favorite moment..."></textarea>
<div id=uploadBtn>
<label class="uploadBtn">
<input type="file" id="photo" name="photo" multiple accept="image/*,video/*,audio/*" />
Attach Images
</label>
</div>
<div id="submitBtn">
<input class="submitBtn" type="submit" name="Upload" value="Upload Photo" />
</div>
</form>
Код серверной стороны:
const express = require('express');
const multer = require('multer');
const bodyParser = require('body-parser');
const app = express();
const port = process.env.PORT || 3000;
app.use(bodyParser.urlencoded({extended:false}));
app.use(bodyParser.json());
app.use('/', express.static(__dirname + '/public'));
const multerConfig = {
storage: multer.diskStorage({
destination: function(req, file, next){
next(null, './uploads/photos');
},
filename: function(req, file, next){
console.log(file);
const ext = file.mimetype.split('/')[1];
next(null, file.fieldname + '-' + Date.now() + '.'+ext);
}
})
};
app.get('/', function(req, res){
res.render('index.html');
});
app.post('/upload', multer(multerConfig).array('photo'),function(req, res){
res.sendFile('public/second.html', {root: __dirname })
});
app.listen(port,function(){
console.log(`Server listening on port ${port}`);});