Apache HttpClient - żądanie HTTP Get
Metoda GET służy do pobierania informacji z danego serwera przy użyciu podanego URI. Żądania korzystające z GET powinny tylko pobierać dane i nie powinny mieć żadnego innego wpływu na dane.
Interfejs API HttpClient udostępnia klasę o nazwie HttpGet który reprezentuje metodę żądania get.
Wykonaj czynności podane poniżej, aby wysłać żądanie pobierania przy użyciu biblioteki HttpClient
Krok 1 - Utwórz obiekt HttpClient
Plik createDefault() metoda HttpClients class zwraca a CloseableHttpClient obiekt, który jest podstawową implementacją HttpClient berło.
Korzystając z tej metody, utwórz obiekt HttpClient, jak pokazano poniżej -
CloseableHttpClient httpclient = HttpClients.createDefault();
Krok 2 - Utwórz obiekt HttpGet
Plik HttpGet klasa reprezentuje żądanie HTTPGET, które pobiera informacje z danego serwera przy użyciu identyfikatora URI.
Utwórz żądanie HTTP GET, tworząc wystąpienie tej klasy. Konstruktor tej klasy akceptuje wartość String reprezentującą identyfikator URI.
HttpGet httpget = new HttpGet("http://www.tutorialspoint.com/");
Krok 3 - Wykonaj żądanie Get
Plik execute() metoda CloseableHttpClient class akceptuje obiekt HttpUriRequest (interfejs) (tj. HttpGet, HttpPost, HttpPut, HttpHead itp.) i zwraca obiekt odpowiedzi.
Wykonaj żądanie za pomocą tej metody, jak pokazano poniżej -
HttpResponse httpresponse = httpclient.execute(httpget);
Przykład
Poniżej znajduje się przykład, który demonstruje wykonanie żądania HTTP GET przy użyciu biblioteki HttpClient.
import java.util.Scanner;
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
public class HttpGetExample {
public static void main(String args[]) throws Exception{
//Creating a HttpClient object
CloseableHttpClient httpclient = HttpClients.createDefault();
//Creating a HttpGet object
HttpGet httpget = new HttpGet("https://www.tutorialspoint.com/ ");
//Printing the method used
System.out.println("Request Type: "+httpget.getMethod());
//Executing the Get request
HttpResponse httpresponse = httpclient.execute(httpget);
Scanner sc = new Scanner(httpresponse.getEntity().getContent());
//Printing the status line
System.out.println(httpresponse.getStatusLine());
while(sc.hasNext()) {
System.out.println(sc.nextLine());
}
}
}
Wynik
Powyższy program generuje następujące dane wyjściowe -
Request Type: GET
<!DOCTYPE html>
<!--[if IE 8]><html class = "ie ie8"> <![endif]-->
<!--[if IE 9]><html class = "ie ie9"> <![endif]-->
<!--[if gt IE 9]><!-->
<html lang = "en-US"> <!--<![endif]-->
<head>
<!-- Basic -->
<meta charset = "utf-8">
<title>Parallax Scrolling, Java Cryptography, YAML, Python Data Science, Java
i18n, GitLab, TestRail, VersionOne, DBUtils, Common CLI, Seaborn, Ansible,
LOLCODE, Current Affairs 2018, Apache Commons Collections</title>
<meta name = "Description" content = "Parallax Scrolling, Java Cryptography, YAML,
Python Data Science, Java i18n, GitLab, TestRail, VersionOne, DBUtils, Common
CLI, Seaborn, Ansible, LOLCODE, Current Affairs 2018, Intellij Idea, Apache
Commons Collections, Java 9, GSON, TestLink, Inter Process Communication (IPC),
Logo, PySpark, Google Tag Manager, Free IFSC Code, SAP Workflow"/>
<meta name = "Keywords" content = "Python Data Science, Java i18n, GitLab,
TestRail, VersionOne, DBUtils, Common CLI, Seaborn, Ansible, LOLCODE, Gson,
TestLink, Inter Process Communication (IPC), Logo"/>
<meta http-equiv = "X-UA-Compatible" content = "IE = edge">
<meta name = "viewport" content = "width = device-width,initial-scale = 1.0,userscalable = yes">
<link href = "https://cdn.muicss.com/mui-0.9.39/extra/mui-rem.min.css"
rel = "stylesheet" type = "text/css" />
<link rel = "stylesheet" href="/questions/css/home.css?v = 3" />
<script src = "/questions/js/jquery.min.js"></script>
<script src = "/questions/js/fontawesome.js"></script>
<script src = "https://cdn.muicss.com/mui-0.9.39/js/mui.min.js"></script>
</head>
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . . .
</script>
</body>
</html>