httpclient4.5 使用post方式提交请求

 

 private RequestConfig requestConfig = RequestConfig.custom().setSocketTimeout(25000).setConnectTimeout(25000)

.setConnectionRequestTimeout(25000).build();

 

private final String charSet = "UTF-8";

 

public String postString(String url, Map<String, String> param) throws ClientProtocolException, IOException {

 

CloseableHttpClient httpclient = HttpClients.createDefault();

 

try {

RequestBuilder rb = RequestBuilder.post().setUri(new URI(url));

// 请求参数

if (null != param) {

Iterator<Entry<String, String>> item = param.entrySet().iterator();

while (item.hasNext()) {

Entry<String, String> it = item.next();

// 编码格式utf-8

rb = rb.addParameter(it.getKey(), it.getValue());

}

}

rb.setConfig(requestConfig);

HttpUriRequest login = rb.build();

 

CloseableHttpResponse response = httpclient.execute(login);

if (HttpStatus.SC_OK == response.getStatusLine().getStatusCode()) {

HttpEntity entitys = response.getEntity();

if (entitys != null) {

return EntityUtils.toString(entitys, charSet);

}

}

 

// 关闭

if (null != response) {

response.close();

}

 

if (null != httpclient) {

httpclient.close();

}

 

} catch (Exception e) {

e.printStackTrace();

}

 

return "";

}

 

 //测试方法

 

public class PayBest {

 

public static void orderCommon(){

 

HttpFilePost post = new HttpFilePost();

String url ="http://localhost:8080/yun/api/best.do";

Map<String,String> param = new HashMap<String,String>();

param.put("userId", "1111110978");

param.put("orderList", "17022800915900");

param.put("bpwd", "111222");

param.put("method", "payCommon");

 

try {

String result = post.postString(url, param);

System.out.println(result);

} catch (ClientProtocolException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (IOException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

 

}

 

 

public static void main(String[] args) {

orderCommon();

}

 

}

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值