HttpClient Post请求

POST 请求用于向服务器发送数据;例如,客户信息、文件上传等,使用 HTML 表单。

HttpClient API 提供了一个名为 HttpPost 的类,它表示 POST 请求。

按照下面给出的步骤使用 HttpClient 发送 HTTP POST 请求。

1)创建一个HttpClient对象

HttpClients类的createDefault()方法返回类CloseableHttpClient的对象,它是HttpClient接口的基本实现。

使用此方法,创建一个 HttpClient 对象。

2)创建HttpPost对象

上述的HttpPost类表示HTTP POST请求。这将发送所需的数据并使用 URI 检索给定服务器的信息。

通过实例化HttpPost类并将表示 URI 的字符串值作为参数传递给其构造函数来创建此请求。

HttpPost httpget = new HttpPost("http://www.yiidian.com");

3)执行Post请求

CloseableHttpClient 对象的execute()方法接受一个 HttpUriRequest (interface) 对象(即 HttpGet、HttpPost、HttpPut、HttpHead 等)并返回一个响应对象。

HttpResponse httpResponse = httpclient.execute(httpget);

4)HttpClient执行Post请求的例子

以下示例演示了使用 HttpClient 执行 HTTP POST 请求。

package com.yiidian;

import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;

import java.util.Scanner;

public class HttpGetExample {
 
   public static void main(String args[]) throws Exception{
 
      //Creating a HttpClient object
      CloseableHttpClient httpclient = HttpClients.createDefault();

      //Creating a HttpPost object
      HttpPost httpget = new HttpPost("http://www.yiidian.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());
      }
   }
} 

输出结果为:

 

热门文章

优秀文章