#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
программное обеспечение над вашими маршрутами…