Загрузить изображение - Strapi - React Native - PullRequest
0 голосов
/ 26 августа 2018

Я новичок в React Native и Strapi и хочу загрузить изображения в API: мое приложение позволяет пользователю добавить объявление о продаже (Название, Описание, Количество, Количество лотов, Цена, Фото 1, Фото 2, ...).

Я могу добавить объявление о продаже с текстовыми полями, но не с фотографиями.И я не могу найти, как это сделать в документации Страпи (я использую MongoDB).Зная, что Страпи не принимает FormData.На данный момент я получаю изображение смартфона в формате «base64» и отправляю его в API, но оно не работает.

Insert_Into_DataBase = () => {
console.log("insert");
console.log(this.state.image1);

this.setState(
  {
    ActivityIndicator_Loading: true
  },
  () => {
    console.log("fetch");

    fetch("http://192.168.0.102:1337/annonces", {
      method: "POST", 
      headers: {

        "Content-Type": "application/json"
      },

      body: JSON.stringify({
        titreAnnonce: this.state.titre, 
        description: this.state.description,
        qte: this.state.disponibilite,
        nbrLots: this.state.lots,
        Image1: this.state.image1
      })
    })
      .then(response => response.json())
      .then(responseJsonFromServer => {
        alert(responseJsonFromServer + "L'annonce à bien été postée");
        this.setState({ ActivityIndicator_Loading: false });
      })
      .catch(error => {
        console.error(error);
        this.setState({ ActivityIndicator_Loading: false });
      });
  }
);
   };

1 Ответ

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

На самом деле, чтобы добавить загрузку к записи (announces в вашем случае), вам сначала нужно будет создать свою запись.

Тогда вам нужно будет использовать маршрут /upload для загрузки вашего файла (один за другим).Здесь есть документация о параметре, который нужно установить, чтобы связать файл с правильной записью https://strapi.io/documentation/guides/upload.html#usage

После этого, если у вас возникнут проблемы с форматом файла, вы можете проверить здесь https://github.com/strapi/strapi/blob/master/packages/strapi-plugin-upload/controllers/Upload.js#L34, гдеФормат файла конвертирован, возможно, вы обновите id для обработки base64 файлов.

...