React Native (Android) Возможная необработанная ошибка отклонения обещания - PullRequest
0 голосов
/ 22 декабря 2018

Я пытаюсь отправить запрос в Google API для определения текста.Но сначала я должен сделать снимок, затем я могу отправить это изображение в Google API с помощью axios.

Следующие коды предназначены для фотографирования.

takePictureAndCreateAlbum = async () => {
    let uri = this.camera.takePictureAsync({
      base64: true
    }).then(data => {
        this.sendVisionOCR(data)
    }).catch(err => {
      console.log("err", err)}
      )
   const asset = await MediaLibrary.createAssetAsync(uri);
   console.log('asset', asset);
   MediaLibrary.createAlbumAsync('Expo', asset)
     .then(() => {
       Alert.alert('Album created!')
     })
     .catch(error => {
       Alert.alert('An Error Occurred!')
     });
    };
}

А следующие коды предназначены для запроса на отправкуgoole api.

sendVisionOCR(data){
      let body = {
        "requests":[
          {
            "image":{
              "content": data
            },
            "features": [
                  {
                    "type": "DOCUMENT_TEXT_DETECTION",
                    "maxResults": 1
                  }
                ]
          }
        ]
      }
axios.post('https://vision.googleapis.com/v1/images:annotate?key=xxXXxx', body)
      .then((response) => {
        console.log("worked", response)

      })
      .catch((err) => console.log("err", err))
}

Когда я запускаю свой код, я получаю эти ошибки;

Возможный необработанный отказ от обещания (id: 0):

Ошибка: неверный аргумент "localUri".Это должна быть строка!

Но иногда, если я изменяю свой код небольшой частью, я вижу бесконечный цикл.Он пытается отправить файл base64.

"axios": "^0.18.0",
"expo": "^31.0.2",
"react": "16.5.0",

И я также попытался получить операцию.Это не работает?

В чем проблема?Почему Axios не работает?

1 Ответ

0 голосов
/ 23 декабря 2018

Я нашел решение.На самом деле мой код работает правильно.Есть еще одна проблема.Когда я запускаю код, требуется очень много времени для кодирования изображения в формате base64, и кажется, что он иногда работает.Есть новый вопрос.

...