1
Je dois envoyer une photo à partir d'un fichier stocké dans la carte SD à un Api externe. Pour ce faire, je suis en utilisant le code suivant:Android envoyer une photo en utilisant HttpPost/HttpGet
String responseStr = null;
this.setMethod(request);
this.setParameters(tags, parameters, optional);
String requested = mUri.build().toString();
HttpHost host = new HttpHost(API_REST_HOST, -1,
HttpHost.DEFAULT_SCHEME_NAME);
Log.d(TAG, requested);
try {
HttpPost post = new HttpPost(requested);
File file = new File(filepath);
FileEntity fileentity;
if (filepath.substring(filepath.length()-3, filepath.length
()).equalsIgnoreCase("jpg")) {
fileentity = new FileEntity(file,"image/jpeg;");
fileentity.setChunked(true);
post.setEntity(fileentity);
}
post.addHeader("Content-Type", "image/jpeg;");
HttpResponse response = mClient.execute(host,post);
« setMethod » et « setParameters » sont propres méthodes afin de construire l'objet Uri. L'API externe prend bien les paramètres mais pas la photo. Il attend la photo dans un champ HttpBody.
Une idée? Merci
Merci
Vous envoyez le JPEG dans le corps, mais le serveur dit qu'il ne voit pas le JPEG dans le corps? –
Le serveur prend l'image en utilisant php de cette manière if ($ im_s = file_get_contents ('php: // input')) { – xger86x