Публикации - Node.js

Разработка express-приложения - Загрузка файлов на сервер

Форма должна содержать

enctype="multipart/form-data"

Таким образом, к ответу мы привязали следующий загловок:

Content-Type: multipart/form-data

Для обработки файла на стороне сервера необходимо установить зависимость express-fileupload:

Установка express-fileupload

npm install --save express-fileupload

Теперь express к загружаемому фалу может обращаться через req.files

app.post('/upload', function(req, res) {
  console.log(req.files); // the uploaded file object
});

Пример обработки и загрузки файла на сервер:

const express = require('express');
const fileUpload = require('express-fileupload');
const app = express();

// default options
app.use(fileUpload());

app.post('/upload', function(req, res) {
  if (!req.files || Object.keys(req.files).length === 0) {
    return res.status(400).send('No files were uploaded.');
  }

  // The name of the input field (i.e. "sampleFile") is used to retrieve the uploaded file
  let sampleFile = req.files.sampleFile;

  // Use the mv() method to place the file somewhere on your server
  sampleFile.mv('/somewhere/on/your/server/filename.jpg', function(err) {
    if (err)
      return res.status(500).send(err);

    res.send('File uploaded!');
  });
});

См. ссылку - https://www.npmjs.com/package/express-fileupload

Количество комментариев: 0

Для того, чтобы оставить коментарий необходимо зарегистрироваться