Apache HttpClient - Solicitação Http Get

O método GET é usado para recuperar informações de um determinado servidor usando um determinado URI. As solicitações que usam GET devem recuperar apenas dados e não devem ter nenhum outro efeito sobre os dados.

A API HttpClient fornece uma classe chamada HttpGet que representa o método de solicitação get.

Siga as etapas abaixo para enviar uma solicitação get usando a biblioteca HttpClient

Etapa 1 - Criar um objeto HttpClient

o createDefault() método do HttpClients classe retorna um CloseableHttpClient objeto, que é a implementação básica do HttpClient interface.

Usando este método, crie um objeto HttpClient conforme mostrado abaixo -

CloseableHttpClient httpclient = HttpClients.createDefault();

Etapa 2 - Criar um objeto HttpGet

o HttpGet classe representa a solicitação HTTPGET que recupera as informações do servidor fornecido usando um URI.

Crie uma solicitação HTTP GET instanciando esta classe. O construtor desta classe aceita um valor String que representa o URI.

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

Etapa 3 - Executar a solicitação Get

o execute() método do CloseableHttpClient classe aceita um objeto HttpUriRequest (interface) (isto é, HttpGet, HttpPost, HttpPut, HttpHead etc.) e retorna um objeto de resposta.

Execute a solicitação usando este método conforme mostrado abaixo -

HttpResponse httpresponse = httpclient.execute(httpget);

Exemplo

A seguir está um exemplo que demonstra a execução da solicitação HTTP GET usando a biblioteca 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());
      }
   }
}

Resultado

O programa acima gera a seguinte saída -

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>