Как разместить фотографию во время передачи файлов cookie с помощью функции «Получить» в React? - PullRequest
0 голосов
/ 30 августа 2018

В настоящее время я пытаюсь разрешить пользователю загружать выбранное изображение с вашего компьютера для отправки POST в сторонний API. Сторонний API будет правильно принимать фотографию, только если пользователь прошел проверку подлинности с помощью существующего файла cookie.

Мне не удается заставить функцию извлечения POST-изображения, но я могу успешно выполнить это в Почтальоне, предоставив только Cookie и файл.

Когда я пытаюсь опубликовать сообщение, я получаю 400, а иногда и ошибку вроде: body stream already read.

Что я могу сделать, чтобы этот запрос работал? Спасибо за тонну!

const formData = new FormData();
//this.state.selectedFile would be the image the user selected
formData.append('photo', this.state.selectedFile);

fetch(someUrl, {
  method: 'POST',
  body: formData,
  credentials: 'include'
})
  .then(res => {
    return res.json();
  })
  .then(successRes => {
    console.log('Success (Posting Image):', successRes);
  })
  .catch(error => {
    console.log('Error (Posting Image):', error);
  });

1 Ответ

0 голосов
/ 30 августа 2018

Как разместить фотографию при передаче куки с 'fetch' в React?

Чтобы ответить на ваш вопрос, чтобы обеспечить наличие файлов cookie, вам необходимо указать credentials: 'include', что в точности соответствует вашему коду.

Подробнее

Когда я пытаюсь опубликовать сообщение, я получаю 400, а иногда и ошибку вроде: тело потока уже прочитано.

Две разные ошибки. * 400 означает: какая-то ошибка клиента. Либо сервер неверно настроен, либо полезная нагрузка вашего тела не соответствует ожидаемой для сервера. * body stream already read вы получаете это, когда вы пытаетесь прочитать один и тот же поток дважды, например .json

Ни одна из этих ошибок не существует в опубликованном вами коде.

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