Java 发送 post请求

Posted 二十六画生的博客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 发送 post请求相关的知识,希望对你有一定的参考价值。

import java.io.IOException;

import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.util.EntityUtils;
import org.json.JSONObject;

public class SendPost {

    public static String doPost(String str) {
        // 创建Httpclient对象
        CloseableHttpClient httpClient = HttpClients.createDefault();
        CloseableHttpResponse response = null;
        String resultBackUp = "{ }";
        String result = "";
        try {
            // 创建Http Post请求
            HttpPost httpPost = new HttpPost("http://......");
            // 创建请求内容
            JSONObject param = new JSONObject();
            param.put("str", str);
            StringEntity stringEntity = new StringEntity(param.toString(), "utf-8");
            httpPost.setEntity(stringEntity);
            // 执行http请求
            response = httpClient.execute(httpPost);
            result = EntityUtils.toString(response.getEntity(), "utf-8");
            System.out.println(result);
        } catch (Exception e) {
            e.printStackTrace();//此处不用return,不管前面是否有异常都不会执行此处的return代码
            result = resultBackUp;//异常时执行这句
        } finally {//不管是否有异常,都会执行finally
            try {
                response.close();
                httpClient.close();
            } catch (IOException e) {
                e.printStackTrace();
                return resultBackUp;//close异常时返回
            }
            return result;//close无异常时返回
        }
    }
}

end 

以上是关于Java 发送 post请求的主要内容,如果未能解决你的问题,请参考以下文章

怎么用javascript发送post请求?

求教golang中http发送post请求gb2312编码的解决方案

java接受post请求问题,求大侠帮忙~~

用java做一个httpClient 发送https 的get请求,需要证书验证的那种,求大神指点一下!

java中如何判断发送的请求是不是得到响应

java使用POST发送soap报文请求webservice返回500错误解析