zar Posted February 2, 2011 Share Posted February 2, 2011 Bonjour, Je cherche à interroger une ressource Web distante depuis une appli sur HTTPS avec authentification (login / mot de passe). Pour commencer, je suis déjà parvenu à faire mon appel en HTTP et sans authentification via : URL url = new URL("http://tralala.com/Qqch?truc=1234"); HttpURLConnection connection =(HttpURLConnection) url.openConnection(); InputStream stream = connection.getInputStream(); Et là j'ai un stream dont je sais récupérer le contenu. Comment passer maintenant l'étape du HTTPS et surtout de l'authentification ? Pour le 1er point, j'ai vu qu'une classe HttpsURLConnection existe pour le prendre en charge, je suppose que j'ai juste à remplacer donc, mais pour le reste... je sèche un peu. Merci d'avance pour votre aide. ;) Link to comment Share on other sites More sharing options...
Sakaroz Posted February 24, 2011 Share Posted February 24, 2011 Salut T'es pas forcément obligé de passer par là. Personnellement, j'utilise le HttpClient et le authScope HttpClient httpClient = new DefaultHttpClient(); //authentification AuthScope authScope = new AuthScope("nom-domaine.com", 443); UsernamePasswordCredentials credentials = new UsernamePasswordCredentials("username", "password"); ((AbstractHttpClient) httpClient).getCredentialsProvider().setCredentials(authScope, credentials); Il faut mettre le nom de domaine de ton service (sans le http...ça foirait quand je le mettais) et comme c'est en https, ça utilise le port 443. Quand je fais ça pour une authentification, ça fonctionne niquel :) Sinon pour récupérer le stream dans ce cas là, il te faut créer une classe httpGet (en passant l'URI de ton service en tant que paramètre de son constructeur) et utiliser la méthode .execute(httpGet) de httpClient. Cette méthode retourne une réponse de type httpResponse dans laquelle il y a des méthodes que tu pourras utiliser pour récupérer le statut de ta connexion (401, 404, 200...) ainsi que le stream en faisant httpResponse.getEntity().getContent :) Bon courage ;) Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.