POST 400 (BAD REQUEST) при загрузке файла между React и Flask - PullRequest
0 голосов
/ 08 февраля 2020

Продолжайте получать ошибку 400 при загрузке файла Excel в мой интерфейс передачи и передаче его в flask api.

Внутренний маршрут flask выглядит так:

    def post(self):
        name = request.form['name']
        file = request.files['file']
        (....do stuff with file and name)

Вызов API реагирования выглядит следующим образом:

export const uploadFile = async (file) => {

    const data = new FormData()
    data.append("file", file)
    data.append("name", 'temp')

    const api_url = "http://localhost:5000/uploadFile"
    const settings = {        
        method: "POST",
        body: data
    }

    try {
        const response = await fetch(api_url, settings)
        const result = await response.json()
        if (result.message === 'OK') {
            return result
        }
    } catch (error) {
        return "Unable to load file"
    }
}

Интересно, что поле NAME получает Flask, но объект файла по какой-то причине не обрабатывается Flask.

Я пытался добавить multi-part/formdata Content-Type в вызове React Fetch API, но это тоже не помогает.

1 Ответ

0 голосов
/ 08 февраля 2020

Разобрался с проблемой.

Оказывается, вам нужно передать [0] после ответа React:

data.append("file", file[0])

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