Apache HttpClient - Richiesta di post Http
Una richiesta POST viene utilizzata per inviare dati al server; ad esempio, informazioni sui clienti, caricamento di file, ecc. utilizzando moduli HTML.
L'API HttpClient fornisce una classe denominata HttpPost che rappresenta la richiesta POST.
Seguire i passaggi indicati di seguito per inviare una richiesta HTTP POST utilizzando la libreria HttpClient.
Passaggio 1: creare un oggetto HttpClient
Il createDefault() metodo del HttpClients class restituisce un oggetto della classe CloseableHttpClient, che è l'implementazione di base di HttpClient interfaccia.
Usando questo metodo, crea un oggetto HttpClient.
CloseableHttpClient httpClient = HttpClients.createDefault();
Passaggio 2: creare un oggetto HttpPost
Il HttpPost class rappresenta il HTTP POSTrichiesta. Questo invia i dati richiesti e recupera le informazioni del server specificato utilizzando un URI.
Crea questa richiesta istanziando il file HttpPost class e passare un valore stringa che rappresenta l'URI, come parametro al suo costruttore.
HttpGet httpGet = new HttpGet("http://www.tutorialspoint.com/");
Passaggio 3: eseguire la richiesta di acquisizione
Il execute() Il metodo dell'oggetto CloseableHttpClient accetta un oggetto HttpUriRequest (interfaccia) (ad esempio HttpGet, HttpPost, HttpPut, HttpHead ecc.) e restituisce un oggetto risposta.
HttpResponse httpResponse = httpclient.execute(httpget);
Esempio
Di seguito è riportato un esempio che dimostra l'esecuzione della richiesta HTTP POST utilizzando la libreria HttpClient.
import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
public class HttpPostExample {
public static void main(String args[]) throws Exception{
//Creating a HttpClient object
CloseableHttpClient httpclient = HttpClients.createDefault();
//Creating a HttpGet object
HttpPost httppost = new HttpPost("https://www.tutorialspoint.com/");
//Printing the method used
System.out.println("Request Type: "+httppost.getMethod());
//Executing the Get request
HttpResponse httpresponse = httpclient.execute(httppost);
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 precedente genera il seguente output.
Request Type: POST
<!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" conten t= "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>