zar Posté(e) 2 février 2011 Share Posté(e) 2 février 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. ;) Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sakaroz Posté(e) 24 février 2011 Share Posté(e) 24 février 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 ;) Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.