J'essaie d'utiliser un HttpURLConnection dans mon application. J'ai mis ma méthode de demande à 'GET', mais quand j'essaye de récupérer le flux de sortie alors la méthode est changée en 'POST'! Je ne suis pas sûr que ce soit la raison, mais mon serveur JSON (j'utilise JAX-RS) renvoie une page vierge lorsque j'envoie une requête en utilisant un 'POST'.Android ne peut pas envoyer de requête GET avec HttpURLConnection
Voici un extrait de mon code:
// Create the connection
HttpURLConnection con = (HttpURLConnection) new URL(getUrl() + uriP).openConnection();
// Add cookies if necessary
if (cookies != null) {
for (String cookie : cookies) {
con.addRequestProperty("Cookie", cookie);
Log.d("JSONServer", "Added cookie: " + cookie);
}
}
con.setDoOutput(true);
con.setDoInput(true);
con.setUseCaches(false);
con.setRequestMethod("GET");
con.setConnectTimeout(20000);
// Add 'Accept' property in header otherwise JAX-RS/CXF will answer a XML stream
con.addRequestProperty("Accept", "application/json");
// Get the output stream
OutputStream os = con.getOutputStream();
// !!!!! HERE THE REQUEST METHOD HAS BEEN CHANGED !!!!!!
OutputStreamWriter wr = new OutputStreamWriter(os);
wr.write(requestP);
// Send the request
wr.flush();
Merci pour vous répondre. Eric
Grand, ça marche! Merci beaucoup pour votre réponse rapide. J'ai fait une erreur: j'ai réutilisé un ancien code qui demande un serveur avec l'extrait ci-dessus. Ce serveur ne dérange pas si la demande utilise une méthode POST ou GET! – Eric