发送请求 没有参数

private static void getData() {
String timeStamp = String.valueOf(System.currentTimeMillis());
String code = "1234";
String key = "1234567";
String sign = DigestUtils.md5Hex(key + timeStamp + code).toUpperCase();
String url = "http://test/api/Information/getData?ts=" + timeStamp + "&code=" + code + "&sign=" + sign;
CloseableHttpClient closeableHttpClient = HttpClientBuilder.create().build();
HttpPost httpPost = new HttpPost(url);
ResponseHandler<String> responseHandler = new BasicResponseHandler();
String responseBody = null;
try {
responseBody = closeableHttpClient.execute(httpPost, responseHandler);
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
closeableHttpClient.close();
} catch (IOException e) {
e.printStackTrace();
}
}
System.out.println(responseBody);
// JSONObject response = new JSONObject(responseBody);
// JSONArray resultArray = response.getJSONArray("result");
// for (int i = 0; i < resultArray.length(); i++) {
// System.out.println(resultArray.getJSONObject(i));
// }
// System.out.println("/n/n" +responseBody);
}

发送请求 有参数

private static void syncData(String sampleId, String productId, String orderId, int baResult, int isPresentation) {
String timeStamp = String.valueOf(System.currentTimeMillis());
String code = "1234";
String key = "1234567";
// 添加 Http post 参数
List<String> jsonList = new ArrayList<String>();
JSONObject jsonObject = new JSONObject();
jsonObject.put("sampleId", sampleId); // 参数
jsonObject.put("productId", productId); // 参数
jsonObject.put("orderId", orderId); // 参数
jsonObject.put("baResult", baResult); // 参数
jsonObject.put("isPresentation", isPresentation); // 参数
String json = jsonObject.toString();
jsonList.add(json); // 把 json 放到集合里
String sign = DigestUtils.md5Hex(key + timeStamp + code + jsonList.toString()).toUpperCase();
String url = "http://test/api/Information/syncData?ts=" + timeStamp + "&code=" + code + "&sign=" + sign;
CloseableHttpClient closeableHttpClient = HttpClientBuilder.create().build();
HttpPost httpPost = new HttpPost(url);
try {
httpPost.setEntity(new StringEntity(jsonList.toString()));
} catch (UnsupportedEncodingException e1) {
e1.printStackTrace();
}
ResponseHandler<String> responseHandler = new BasicResponseHandler();
String responseBody = null;
try {
responseBody = closeableHttpClient.execute(httpPost, responseHandler);
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
closeableHttpClient.close();
} catch (IOException e) {
e.printStackTrace();
}
}
System.out.println(responseBody);
}

发送请求 上传pdf文件

private static void uploadPresentation(String productId, String orderId, String reportFile) {
File file = new File(reportFile);
MultipartEntityBuilder multipartEntityBuilder = MultipartEntityBuilder.create();
multipartEntityBuilder.addBinaryBody("file", file); // 上传的 pdf 报告
multipartEntityBuilder.addTextBody("productId", productId); // 参数
multipartEntityBuilder.addTextBody("orderId", orderCode); // 参数
HttpEntity httpEntity = multipartEntityBuilder.build();
String timeStamp = String.valueOf(System.currentTimeMillis());
String code = "1234";
String key = "1234567";
String sign = DigestUtils.md5Hex(key + timeStamp + code).toUpperCase();
String url = "http://test/Information/uploadfile?ts=" + timeStamp + "&code=" + code + "&sign=" + sign;
CloseableHttpClient closeableHttpClient = HttpClientBuilder.create().build();
HttpPost httpPost = new HttpPost(url);
try {
httpPost.setEntity(httpEntity);
} catch (Exception e1) {
e1.printStackTrace();
}
ResponseHandler<String> responseHandler = new BasicResponseHandler();
String responseBody = null;
try {  
responseBody = closeableHttpClient.execute(httpPost, responseHandler);
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
closeableHttpClient.close();
} catch (IOException e) {
e.printStackTrace();
}
}
System.out.println(responseBody);
}

  

HttpClient 发送请求和参数的更多相关文章

  1. 使用HttpClient发送请求、接收响应

    使用HttpClient发送请求.接收响应很简单,只要如下几步即可. 1.创建HttpClient对象.  CloseableHttpClient httpclient = HttpClients.c ...

  2. .NetCore HttpClient发送请求的时候为什么自动带上了一个RequestId头部?

    奇怪的问题 最近在公司有个系统需要调用第三方的一个webservice.本来调用一个下很简单的事情,使用HttpClient构造一个SOAP请求发送出去拿到XML解析就是了. 可奇怪的是我们的请求在运 ...

  3. 使用HttpClient发送请求接收响应

    1.一般需要如下几步:(1) 创建HttpClient对象.(2)创建请求方法的实例,并指定请求URL.如果需要发送GET请求,创建HttpGet对象:如果需要发送POST请求,创建HttpPost对 ...

  4. httpClient 发送请求后解析流重用的问题(HttpEntity的重用:BufferedHttpEntity)

    使用场景: 项目中使用httpClient发送一次http请求,以流的方式处理返回结果,开始发现返回的流只能使用一次,再次使用就会出错,后来看了一些解决方案,EntityUtils.consume(r ...

  5. httpclient发送不带参数post数据

    两个问题:      1.httpclient怎样发送一个没有不论什么參数的post数据呢?      2.Webproject怎样去接收一个无參数的post呢? 起因:      今天(2014.1 ...

  6. 记录下httpclient 发送请求 服务端用@RequestBody 自动接收参数 报415

    注解是post方式,那么检查以下内容:1. 你是否用了post请求2. 请求是否发送了数据3. 请求内容格式需要是 application/json .jquery 设置 contentType,-- ...

  7. httpclient post请求带参数返回数据乱码问题解决

    客户端代码: //带参数的post请求 @Test public void doPostWithParam() throws Exception { CloseableHttpClient httpC ...

  8. httpclient发送请求的几种方式

    package asi; import org.apache.http.HttpEntity; import org.apache.http.client.config.RequestConfig; ...

  9. Android系列之网络(三)----使用HttpClient发送HTTP请求(分别通过GET和POST方法发送数据)

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

随机推荐

  1. 财政FINAUNCE英文FINAUNCE金融

    中文名金融 外文名Finance.Finaunce 概括为货币的发行与回笼 从事金融机构有银行.信托投资公司 目录 1 基本定义 2 关于概念 ? 概念新解 ? 概念现状 ? 熊德平新解 3 金融特征 ...

  2. k8s维护常用命令

    k8s维护 1. 不可调度 kubectl cordon k8s-node-1 kubectl uncordon k8s-node-1 #取消 2.驱逐已经运行的业务容器 kubectl drain ...

  3. Android常用优秀开源框架整理

    前言 AOSF:全称为Android Open Source Framework,即Android优秀开源框架汇总.包含:网络请求okhttp,图片下载glide,数据库greenDAO,链式框架Rx ...

  4. IDEA中安装及配置SVN

    1.TortoiseSvn(小乌龟下载地址): https://tortoisesvn.net/downloads.html 2.下载完SVN安装包后,在本机安装SVN(小乌龟),注意安装的时候添加上 ...

  5. 基于 K8S 集群安装部署 istio-1.2.4

    使用云平台可以为组织提供丰富的好处.然而,不可否认的是,采用云可能会给 DevOps 团队带来压力.开发人员必须使用微服务以满足应用的可移植性,同时运营商管理了极其庞大的混合和多云部署.Istio 允 ...

  6. mysql修改表结构,添加double类型新列

    ALTER TABLE t_cas_construction_statistics ADD COLUMN resource_one_online_count DOUBLE(128,0) COMMENT ...

  7. 新建本地用户连接vsftp出现530 Login incorrect

    新建的用户的方式 [root@centos2 /var/ftp]# useradd -s /sbin/nologin user1 出错原因: /etc/pam.d/vsftp文件作了限制 [root@ ...

  8. python写一些简单的tcp服务器和客户端

    代码贴上,做个记录 TcpClient # -*- coding:utf-8 -*- import socket target_host = "127.0.0.1" #服务器端地址 ...

  9. idea中自动deployment的步骤

  10. spring的面试题

    什么是spring? spring是一个开源框架,为简化企业级应用开发而生.Spring可以是使简单的javaBean实现以前只有EJB才能实现的功能.Spring是一个IOC和AOP容器框架. Sp ...