Я пытаюсь отправить запрос в 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 не работает?