как читать опубликованные данные на узле js api - PullRequest
0 голосов
/ 16 ноября 2018

Я хочу прочитать CSV-данные, загруженные в резервную копию.

для этого я отправляю данные по почте из внешнего интерфейса ..

код внешнего интерфейса:

fileEvent(e) {
    this.filedata = e.target.files;
    if (this.filedata.length > 0) {
      const file: File = this.filedata[0];
      console.log(file);
      const formData: FormData = new FormData();
      formData.append('files', file, file.name);
      this.http.post('myUrl',  {file: formData}, this.options)
                     .subscribe((res) => {
                     });
    }
  } 

скриншот моего файла: enter image description here

теперь на отступившем я написал маршрут на api.js, который направляет меня на контроллер, который я создал.

my api.js код:

router.post('/product/csvdata', function (req, res) {
    productimport.importcsvProduct(req, res);
});

и, наконец, на моем контроллере я утешаю свои данные:

    var product = {
            importcsvProduct: function (req,res) {
                console.log(req.body.file);
             }
    };

module.exports = product;

но я получаю пустую {} в консоли .. ??

Может кто-нибудь проверить, что не так с этим .. ??

1 Ответ

0 голосов
/ 16 ноября 2018

В этом случае вам необходимо использовать промежуточное ПО для обработки файлов, например multer .

const express = require('express')
const multer  = require('multer')
const upload = multer({ dest: 'uploads/' })

const app = express()

app.post('/profile', upload.single('csvdata'), function (req, res, next) {
  // req.file is the `csvdata` file
  // req.body will hold the text fields, if there were any
})
...