Express.js: неопределенное тело запроса (base64) - PullRequest
0 голосов
/ 27 мая 2019

Я пытаюсь преобразовать таблицу .xls в строку .csv.

Я нашел библиотеку, которая помогает с такой операцией, ее имя XLSX

Какпервый шаг, я кодирую таблицу .xls в формат base64.

Теперь я пытаюсь отправить запрос на публикацию с почтальоном (с кодом base64 в качестве тела запроса)

Но когдаЯ пытаюсь console.log мой req.body, я получаю неопределенное.Можете ли вы сказать мне, где я мог ошибиться в своем приложении?

my app.js :

const express = require('express');
const dataConverter = require('./inputDataConverter');
const { errorHandler } = require('./../error/error-handler');

const app = express();
const port = process.env.PORT || 5000;
const domain = process.env.DOMAIN || '0.0.0.0';

app.post('/convert', dataConverter);
app.all('*', (req, res, next) => next('Invalid request'));

app.use(errorHandler);

app.listen(port, () => {
  console.log(`Microservice runs on http://${domain}:${port}`);
});

inputDataConverter.js:

const XLSX = require('xlsx');

module.exports = (req, res, next) => {

  console.log('First console.log ' + req.body);

  const getWorkbook = (data) => {
    let wb = null;

    if (!data.type || data.type === 'base64') {
      wb = XLSX.read(data.body, { type: 'base64' });
    }

    console.log('everything is working');
    return wb;
  };

  const requestData = req.body;
  console.log(requestData);

  getWorkbook(requestData);
};

1 Ответ

0 голосов
/ 27 мая 2019

Как сказала Молда Вам может понадобиться парсер тела https://www.npmjs.com/package/body-parser

В новой версии собственно body-parser встроен в выражение, поэтому вы можете использовать его как:

app.use(express.json())

Я действительно предлагаю вам использовать пакет express-generator для генерации базового приложения Express https://www.npmjs.com/package/express-generator

Вы можете найти то, что вам может не понадобиться просто раздень это

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...