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) P>
Ceci est mes données à envoyer dans le corps: p> maintenant, backend (PHP) veut un format de fichier, j'ai le format URI dans React P> P>
3 Réponses :
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();
}
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.
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
});
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 p>
Profil_Image: {Uri: Imageresponse.uri, Nom: Imageresponse.filename, Type: Imageresponse.type} P>