Не удается отправить данные с сервера react на экспресс-сервер

#javascript #node.js #reactjs #express

Вопрос:

Я пытаюсь отправить данные с react на экспресс-сервер.

Код реакции:

 const imageRenderer = async () => {
  const res = await axios({
    method: "post",
    url: "http://localhost:8080/previewRender",
    data: selectedFile.filePaths,
  });
console.log(res.data);
 

};

Экспресс-код:

 app.post("/previewRender", (req, res) => {
  var fileLocation = req.body;
  console.log(fileLocation); 
});
 

Однако в консоли расположение файла отображается как неопределенное. selectedFile.Пути к файлам имеют тип object. Не могу ли я отправить объект в экспресс?

Комментарии:

1. Мы видим только небольшую часть вашего кода, поэтому трудно догадаться, но если бы я это сделал, я бы проверил, используете ли вы промежуточное программное обеспечение для анализа тела в своем приложении Express

2. Я не использовал никакой синтаксический анализатор тела.

3. Вам нужен анализатор тела для чтения файлов. Проверьте это npmjs.com/package/multer .

Ответ №1:

Вы использовали app.use(express.json()) в своем app.js?

Комментарии:

1. Пожалуйста, используйте раздел комментариев, когда вам потребуется более подробная информация о вопросе, и публикуйте его в качестве ответа только тогда, когда он действительно отвечает на вопрос 🙂

2. Использование этого сработало в моем случае

Ответ №2:

Добавьте это в app.js (app.js) или ваш корневой файл приложения для отправки запроса

 app.use(express.json());

app.use(express.urlencoded({ extended: false }));
 

Поместите это промежуточное app.js программное обеспечение над вашими маршрутами…