Pengesahan Asas HTTP dalam Java Menggunakan HttpClient
Untuk meniru kefungsian arahan curl yang disediakan, anda boleh menggunakan teknik berikut menggunakan Commons HttpClient .
Commons HttpClient 3.0.1
Isu dengan kod yang disediakan ialah kaedah setDoAuthentication ditamatkan dalam Commons HttpClient 3.0.1. Sebaliknya, anda boleh menetapkan pengepala pengesahan secara manual:
post.setRequestHeader("Authorization", "Basic " + Base64.encodeBase64String((username + ":" + password).getBytes(ENCODING)));
Commons HttpClient 4.0.1
Untuk Commons HttpClient 4.0.1, anda boleh menggunakan kod berikut untuk lakukan pengesahan asas:
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();
Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Pengesahan Asas Http di Java menggunakan HttpClient?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!