Le téléchargement de l'image sur le serveur en plusieurs parties avec des données JSON dans Android
Je suis en train de télécharger une image sur un serveur avec quelques données JSON qui est recueillie à partir d'un formulaire.
Le serveur dispose d'authentification.
METHOD: post
HEADERS:
Authorization Basic d2Vic2VydmljZTpyM05hdTE3Rw==
Content-Type multipart/form-data;boundary=xxxxxxxx
BODY:
--xxxxxxxx
Content-Disposition: form-data; name="jsonFile"
Content-Type: application/json
{"model":"Premium","deviceLongitude":4.79337638,"pseudo":"nickname","deviceLatitude":45.7671507,"year":"2005","email":"[email protected]","deviceLocale":"fr_FR","title":"my picture"}
--xxxxxxxx
Content-Disposition: form-data; name="imgName"
Content-Type: image/jpeg
//Image data array
/9j/4AAQSkZJRgABAQAAAQABAAD/4QBYRXhpZgAATU0AKgAAAAgAAgESAAMAAAAB
AAEAAIdpAAQAAAABAAAAJgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAB4KAD
AAQAAAABAAACgAAAAAD/2wBDAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQH/2wBDAQEBAQEBAQEB
AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB
AQEBAQEBAQH/wAARCAKAAeADAREAAhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAA
AAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQAAAF
--xxxxxxxx
Vous devez vous connecter pour publier un commentaire.
La dernière ligne devrait être
--xxxxxxxx--
, et pas--xxxxxxxx
.Je sais que ce post est un couple d'années, mais je tiens à partager ma solution à l'aide MultiPartEntity de ici disponible en tant que partie de la HttpClient télécharger. J'ai utilisé la version 4.2.5.
J'ai d'abord utilisé un procédé similaire à ci-dessus, qui a bien fonctionné jusqu'à ce que je commencé à recevoir des erreurs de mémoire quand j'ai commencé à prendre en charge le téléchargement de vidéos. J'ai fait des recherches beaucoup de messages ici et a beaucoup de bonnes idées. J'ai utilisé le Java Decompiler disponible ici à regarder le code dans le fichier Jar pour comprendre comment mettre des choses ensemble.
Ne pas réinventer la roue!
L'Apache HttpClient ont mis en œuvre votre exige.
Android JSON HttpClient pour envoyer des données au serveur PHP avec HttpResponse
Goog luck!
Vous pouvez également voir un Exemple sur mon blog Ici
À moins que cette réponse a déjà donné... j'ai trouvé une solution élégante pour ce même problème. Je l'ai posté ici: https://stackoverflow.com/questions/7595939/how-to-upload-multipart-image-data-in-json-request-android/
Essayer ce Code, il est facile
HTML:
HTML:
Ceci est un exemple de télécharger l'image et JSONArray à l'aide de MultipartEntity-- lib:org.apache.http.de l'entité.mime