Apache HttpClient - Http Get Request

Il metodo GET viene utilizzato per recuperare le informazioni da un determinato server utilizzando un determinato URI. Le richieste che utilizzano GET dovrebbero solo recuperare i dati e non dovrebbero avere altri effetti sui dati.

L'API HttpClient fornisce una classe denominata HttpGet che rappresenta il metodo di richiesta get.

Seguire i passaggi indicati di seguito per inviare una richiesta get utilizzando la libreria HttpClient

Passaggio 1: creare un oggetto HttpClient

Il createDefault() metodo del HttpClients class restituisce a CloseableHttpClient oggetto, che è l'implementazione di base di HttpClient interfaccia.

Usando questo metodo, crea un oggetto HttpClient come mostrato di seguito -

CloseableHttpClient httpclient = HttpClients.createDefault();

Passaggio 2: creare un oggetto HttpGet

Il HttpGet class rappresenta la richiesta HTTPGET che recupera le informazioni del server dato utilizzando un URI.

Crea una richiesta HTTP GET istanziando questa classe. Il costruttore di questa classe accetta un valore String che rappresenta l'URI.

HttpGet httpget = new HttpGet("http://www.tutorialspoint.com/");

Passaggio 3: eseguire la richiesta di acquisizione

Il execute() metodo del CloseableHttpClient class accetta un oggetto HttpUriRequest (interfaccia) (cioè HttpGet, HttpPost, HttpPut, HttpHead ecc.) e restituisce un oggetto risposta.

Esegui la richiesta utilizzando questo metodo come mostrato di seguito:

HttpResponse httpresponse = httpclient.execute(httpget);

Esempio

Di seguito è riportato un esempio che dimostra l'esecuzione della richiesta HTTP GET utilizzando la libreria 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());
      }
   }
}

Produzione

Il programma di cui sopra genera il seguente output:

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>