Pesquisa de site

javascript - Use URI no Document-picker do Expo para obter o próprio arquivo


Fiquei preso ao tentar enviar um arquivo do react-native (android usando expo) para um servidor back-end. Eu recebi do DocumentPicker.getDocumentAsync() esta resposta

    {
      "name": "QuitusInscription_30769_59.pdf",
      "size": 41438,
      "type": "success",
      "uri": "file:///data/user/0/host.exp.exponent/cache/ExperienceData/%2540anonymous%252Fcsdl_frontend-46ddf63e-90ab-44b3-a4c7-6ad7aad5cccc/DocumentPicker/a40a6599-4900-439a-9e9b-57fa555a80c9.pdf",
    }

Meu problema agora é como usar o URI para obter o próprio arquivo? para que eu possa enviá-lo para o servidor back-end

Obrigado

Resposta #1

Você já tentou ExpoFileSystem.readAsStringAsync?

Por exemplo, já tendo o uri sobre o qual você falou:

import * as ExpoFileSystem from 'expo-file-system'
...
const fileContent = await ExpoFileSystem.readAsStringAsync(uri);

E talvez você queira convertê-lo de JSON para outro formato:

const content = JSON.parse(fileContent);