Récupérer une partie d'un web service de type multipart
Bonjour,
Voici le résultat d'un web services RESTful qui renvoie un multipart :
Citation:
--6671303e-7961-4c3d-aa6d-469dac05731f
Content-Disposition: form-data; name="metadata"
Content-Type: application/json
{"statut":true,"listeMessages":null ...BLABLA... }
--6671303e-7961-4c3d-aa6d-469dac05731f
Content-Length: 73
Content-Disposition: form-data; name="data"
Content-Type: application/octet-stream
Ce texte contient des accents car il est écrit dans la langue de Molière.
--6671303e-7961-4c3d-aa6d-469dac05731f--
Maintenant voici un web service qui appel le web service précédent :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43
|
public static String getWS(String adresseDuWebServiceMULTIPART) throws IOException
{
String loginPassword = "LOGIN:PASSWORD";
String encoded = new sun.misc.BASE64Encoder().encode (loginPassword.getBytes());
URL url = new URL(adresseDuWebServiceMULTIPART);
HttpURLConnection connexion = (HttpURLConnection) url.openConnection();
connexion.setRequestProperty ("Authorization", "Basic " + encoded);
connexion.setRequestMethod("GET");
InputStream is = connexion.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
String in = null;
String result = null;
System.out.println("LECTURE WS GET =>\r\n");
while ((in = br.readLine()) != null)
{
System.out.println(in);
if (result == null)
{
result = in;
}
else
{
result += in;
}
}
System.out.println("FIN LECTURE WS GET\r\n");
connexion.disconnect();
return result;
} |
... et il renvoie bien tout le contenu multipart (qui est affiché au début de ce post).
Mon soucis est que je dois récupérer seulement le second contenu du multipart nommé name="data" dans le multipart. Donc au lieu de tout récupérer je voudrais récupérer seulement la propriété "data". Et là je cherche depuis bien longtemps déjà. :aie:
Comment faire cela ?
Merci pour votre réponse.
A+ ;)