Maison >Java >javaDidacticiel >Comment implémenter l'authentification de base HTTP en Java à l'aide de HttpClient ?

Comment implémenter l'authentification de base HTTP en Java à l'aide de HttpClient ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-11 20:45:03581parcourir

How to Implement Http Basic Authentication in Java using HttpClient?

Authentification de base HTTP en Java à l'aide de HttpClient

Pour imiter la fonctionnalité de la commande curl fournie, vous pouvez utiliser les techniques suivantes à l'aide de Commons HttpClient .

Commons HttpClient 3.0.1

Le problème avec le code fourni est que la méthode setDoAuthentication est obsolète dans Commons HttpClient 3.0.1. Au lieu de cela, vous pouvez définir manuellement l'en-tête d'authentification :

post.setRequestHeader("Authorization", "Basic " + Base64.encodeBase64String((username + ":" + password).getBytes(ENCODING)));

Commons HttpClient 4.0.1

Pour Commons HttpClient 4.0.1, vous pouvez utiliser le code suivant pour effectuer une authentification de base :

String encoded = Base64.getEncoder().encodeToString((user + ":" + pwd).getBytes());
HttpPost httpPost = new HttpPost("http://host:post/test/login");
httpPost.setHeader(HttpHeaders.AUTHORIZATION, "Basic " + encoding);

System.out.println("executing request " + httpPost.getRequestLine());
HttpResponse response = httpClient.execute(httpPost);
HttpEntity entity = response.getEntity();

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn