Entetes Http de URLConnection
bonjour,
je voudrais effectuer une requete Http sur un fichier protéger par .htaccess,
je suis allé prendre ce code source dans la FAQ general Java :
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
|
String adresse="http://IP/";
OutputStreamWriter writer = null;
BufferedReader reader = null;
try
{
//ENTETES HTTP : Authorization: Basic MDP64
//encodage des paramètres de la requête
String donnees = URLEncoder.encode("a", "UTF-8")+
"="+URLEncoder.encode("1", "UTF-8");
donnees += "&"+URLEncoder.encode("b", "UTF-8")+
"=" + URLEncoder.encode("0", "UTF-8");
//création de la connection
URL url = new URL(adresse);
URLConnection conn = url.openConnection();
conn.setRequestProperty("Authorization",mdpHttpLogin);
conn.setDoOutput(true);
//envoi de la requête
writer = new OutputStreamWriter(conn.getOutputStream());
writer.write(donnees);
writer.flush();
//lecture de la réponse
reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
String ligne;
while ((ligne = reader.readLine()) != null)
{
System.out.println(ligne);
} |
j'ai seulement rajouté ceci :
Citation:
conn.setRequestProperty("Authorization",mdpHttpLogin);
( j'ai cru comprendre que setRequestProperty servait a changer les entetes )
pour ne pas avoir une erreur 401.
rien a faire, j'ai quand même le code d'erreur...
avez vous une idée ?
ps:
je precise aussi que le login:mdp envoyé au serveur est encodé en base64