0
votes

Convertir URI en fichiers réacteur JS natif

 Entrez la description de l'image ici

ci-dessus est la demande que j'essaie de faire en réagissable. Mais j'ai Uri Comment vais-je convertir cela en un fichier lors de l'envoi au serveur Backend (PHP)

Ceci est mes données à envoyer dans le corps: xxx

maintenant, backend (PHP) veut un format de fichier, j'ai le format URI dans React


0 commentaires

3 Réponses :


1
votes

réagir et réagir indigène n'a aucune idée de quel système de fichiers est. Donc, ils ne peuvent pas faire de fichier. Une solution de contournement pourrait être téléchargée un nouveau fichier à l'aide de ce code:

downloadprofileImageFile = () => {
  const element = document.createElement("a");
  const file = new Blob([source.uri], {type: 'text/plain'});
  element.href = URL.createObjectURL(file);
  element.download = "profile_image.txt";
  document.body.appendChild(element);
  element.click();
}


3 commentaires

Impossible de changer le code du côté serveur. besoin d'une autre solution


Ciao, j'ai mis à jour ma réponse. J'espère que sera utile. Fais-moi savoir :)


Ne comprends pas cela, pourrait être utile pour quelqu'un d'autre. . enfin utilisé l'image Picker et ses éléments.



1
votes

Utilisez RN-FETCH-BLOB

import { Platform } from 'react-native';


const postImage = (localImageUri, remoteUrl) =>
    RNFetchBlob.fetch(
        'POST',
        remoteUrl,
        { 'Content-Type': 'multipart/form-data' },
        [
            {
                name: 'myimage',
                filename: 'myimage',
                type: 'image/jpeg',
                data: RNFetchBlob.wrap(Platform.OS === 'ios' ? localImageUri.replace('file://', '') : localImageUri),
            },
        ],
    ).then(response => {
        // do something
    }).catch(error => {
        // do something
    });


0 commentaires

0
votes

J'ai utilisé le sélecteur d'images et d'Imageresponse lors de la méthode ShowImagePicker a obtenu les informations suivantes et utilisée dans les données pour envoyer

Profil_Image: {Uri: Imageresponse.uri, Nom: Imageresponse.filename, Type: Imageresponse.type}


0 commentaires