Java HttpClient Post多层json格式参数

HttpClient封装成常规请求方法 get post 支持key-value和json 格式传参 /** * @Description Http|Https 请求工具类 * @Author blake * @Date 2018/12/12 下午4:33 * @Version 1.0 */ public class HttpUtils { private static PoolingHttpClientConnectionManager connMgr; priva... 阅读详情

package ...

import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.LinkedHashMap;
import java.util.List;
import java.util.Map;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.apache.http.util.EntityUtils;

public class HttpWeiXinMessage {
    public static String WeiXinMessage(String url,Map<String,String> params) throws ClientProtocolException, IOException{
        HttpClient httpClient = new DefaultHttpClient();
        HttpPost httpPost =  new HttpPost(url);
        httpPost.addHeader("Content-Type","application/x-www-form-urlencoded;charset=utf-8");//请求头
        /*方法一:一层json*/
        //StringEntity stringEntity = new StringEntity(data,"UTF-8");
        //httpPost.setEntity(stringEntity);//请求主体
        /*方法二*:多层json*/
        HttpWeiXinMessage.setPostData(httpPost, params);
        
        HttpResponse httpResponse = httpClient.execute(httpPost);//发送请求
        HttpEntity httpEntity = httpResponse.getEntity();//获取请求返回体
        String backResult =  EntityUtils.toString(httpEntity,"UTF-8");//请求返回结果
        
        if(httpResponse != null){
          try{
            EntityUtils.consume(httpResponse.getEntity());
            }catch(IOException e){
                e.printStackTrace();
            }
        }//释放资源
        
        return backResult;
        
    }
    
    //设置请求参数
    private static void setPostData(HttpPost httpPost, Map<String,String> params){
        /*另外一种设置请求参数方法*/
        List<NameValuePair> list = new ArrayList<NameValuePair>();
        for (Map.Entry<String, String> entry : params.entrySet()) {
            list.add(new BasicNameValuePair(entry.getKey(),entry.getValue()));
        }
        HttpEntity httpEntity = null;
        try {
            httpEntity = new UrlEncodedFormEntity(list, "UTF-8");
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        }
        httpPost.setEntity(httpEntity);//设置请求主体
    }
    
    //传递Map<String,Strnig> params参数格式
    Map<String, Strnig> map = new LinkedHashMap<String, String>();
    map.put("contexcode", "log");
    map.put("source", "weixin");
    map.put("form", "WeChat");
    map.put("messageId", "jjtz");
    map.put("data", "{'touser':" + amv.getOpenId() + ",'data':{'first': {'value':'qjtz','color':'#0'}," +
    "'keyword1':{'value':'"+realName+"','color':'#0'},'keyword2': {'value':'"+phone+"','color':'#173177'}," +
    "'remark': {'value':'"+senderAddress+"','color':'#173177'}}}");
}

汽车Bootloader流程 根据ISO14229-1 写的汽车行业 Bootloader流程 1:编程前 → 先读取软硬件版本号 22 F1 XX 软件信息 22 F1 XX 硬件信息 → 进入扩展会话extend diagnostic sessions 功能寻址 10 03 → 编程条件检测routine control:ECU升级条件的判断,如车速,检测车的型号 31 01 02 03 → 关闭DTC检测,(由于很多节点收不到其它节点的报文后会记录DTC故障)功能寻址 85 02 → 关闭诊断通讯(禁止各个节点的应用报... 阅读详情

相关推荐

html2canvas - 解决截图后引入的字体样式丢失问题,第三方字体截图导出图片后字体失效,html2canvas截屏生成图片后艺术字体就丢失并且自动转成常规字体了,特殊字体显示不了无法截图怎么办

vue2,vue3,uniapp,html2canvas截图后引入的字体样式丢失,html2canvas艺术字截图不显示,使用外部字体无效,html2canvas无法识别网络字体文件怎么办,ttf文件,网页使用在线字体链接利用html2canvas无法截取,字体样式没有了,font-family第三方字体,@font-face引入本地字体文件后无法被html2canvas识别怎么办,html2canvas文字消失,vue页面正常显示艺术字体但截屏后没有,html2canvas截图存在特殊字体时截图不全,默认

✅ 精选推荐文章 1万+

客户端使用httpclient提交json参数和解析json

// 设置Post服务器的参数,即json对象,并返回该对象。 public static JSONObject setPostPara(Activity activity){ // 获取参数值省略 (imei等参数的获取) 其它的代码也省略了部分 JSONObject params = new JSONObject(); try { params.put("IMEI", imei);

星宇的专栏 8151

srs-librtmp:SRS的客户端库srs-librtmp(https:github.comossrssrs)

srs-librtmp:SRS的客户端库srs-librtmp(https:github.comossrssrs)

使用HttpClient发送和接收JSON请求 推荐给大家

使用HttpClient发送和接收JSON请求 推荐 /** * post请求 * @param url * @param json * @return */ public static JSONObject doPost(String url,JSONObject json){ CloseableHttpClient httpclient = HttpClientBuilder.create().build();

weixin_42134712的博客 859

使用HttpClient发送复杂对象

一、场景需求 项目要求实现在两个服务器之间传输复杂对象,如果使用前端的话ajax可以轻松实现,但是server to server的我还没尝试过,踩了不少雷。话不多说,直接上代码。 思路:将对象转为Json,再通过HttpClient发送。 二、使用步骤 1.Maven <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient<

m0_46161737的博客 1316

HttpClient参数传递

Java技术圆桌会-微信群,欢迎大家的加入,专注技术讨论和学习。 加入的同学可以先加我微信:luxun758521 备注-圆桌会,然后拉你进群。 -HttpClient 编程中,根据post和get请求不同,而参数的传递方式也不同。其中,post请求,参数放在请求体中;get请求,参数放在请求url中; -post和get区别小结:post用于想服务器获取信息,数据量大,安全性高;ge...

TalkingCoding 2135

java 使用httppost设置json参数发送请求

核心代码如下,其中有个对参数进行hash+salt加密方法名为 getSignature(),httppost设置参数主要靠xxxeneity,详情可以百度查看使用!对接第三方接口时,有时接口要求参数json格式,留个笔记备用!getSignature()具体代码如下图一。发送请求并获取响应的代码如下图二。

learnjava1989的博客 4249

通过java发送post请求参数json格式

通过java发送post请求参数json格式 java模拟post请求发送json,用两种方式实现,第一种是HttpURLConnection发送post请求,第二种是使用httpclient模拟post请求。我使用的是第二种方法,下面是具体代码。 import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObj...

anti_996的博客 2万+

JavaHttpClient 中使用 POST 请求传递参数

由于你提到的是 RPC POST 请求,我假设你想知道如何在 POST 请求中传递参数,尤其是结合 RPC 的场景。下面我将分别讲解这两种方式,并提供示例代码。

qq_63553317的博客 3706

java post发送map数据格式_httpclientpost提交json和map参数

首先要导入对应的jar包:jar包地址:https://pan.baidu.com/s/1LNn5nSW8McYGy1EhsYD9VQimport java.util.ArrayList;import java.util.Date;import java.util.HashMap;import java.util.Iterator;import java.util.List;import java...

weixin_30388485的博客 1764

使用httpclient发送post 请求json格式参数获取返回值

参数json格式的字符串的post请求: private static String httpPost(String url, String body) throws Exception { // 1、创建一个htt客户端 CloseableHttpClient httpClient = HttpClients.createDefault(); HttpPost ht...

sunshine_369的博客 3588

通过httpClient4.5.3发送POST请求,并添加请求头参数以及json格式请求参数

1、使用如下jar包或者添加maven依赖 &lt;dependency&gt; &lt;groupId&gt;org.apache.httpcomponents&lt;/groupId&gt; &lt;artifactId&gt;httpclient&lt;/artifactId&gt; &lt;version&gt;4.5.3&lt;/version&gt; &

lichuangcsdn的博客 2万+

使用HttpClient发送post请求时传递json格式参数

```java // 接口测试-处理json格式post请求 public static String doPostJson(String url,String json) { // 创建连接池 CloseableHttpClient closeableHttpClient = HttpClients.createDefault(); ResponseHandler<Str...

weixin_39677482的博客 5175

java使用HttpClient传输json格式参数

感谢博客园的乔叶叶,帮我解决了一个爬虫问题???? 原文在此:https://www.cnblogs.com/qiaoyeye/p/4935834.html ,转载请注明出处。 最近的一个接口项目,传的参数要求是json,需要特殊处理一下。 重点是这两句话: httpPost.setHeader("Content-Type", "application/json;charset=UTF-8");...

qq_40560329的博客 3286

post请求参数json格式

httpPostWithJson

Turing_wzh的博客 2937

java请求参数_在Java中发送http的post请求,设置请求参数等等

前几天做了一个定时导入数据的接口,需要发送http请求,第一次做这种的需求,特地记一下子,导包import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.SortedMap;import java.util.TreeMap;import org.apache.http.HttpStatus;import ...

weixin_28863779的博客 3178

Java解析post请求复杂嵌套json数据

案例一:(两层嵌套) 请求数据: ps:一个对象包含一个对象; 方式一:使用map 代码段: @RestController @RequestMapping("test") public class testDemo { @PostMapping("demo") public void test(@RequestBody Map<String,Map&l...

路西法Lucifer 7251

java request含嵌套_【SpringBoot】 Java中如何封装Http请求,以及JSON多层嵌套解析

前言本文中的内容其实严格来说不算springboot里面的特性,属于JAVA基础,只是我在项目中遇到了,特归纳总结一下。HTTP请求封装目前JAVA对于HTTP封装主要有三种方式:1. JAVA原生封装2. HttpClient 3.X /HttpClient4.X3. Spring RestTemplatehttp请求过程如下:GET:1、创建远程连接2、设置连接方式(get、post、put。...

weixin_39977776的博客 1034

使用HttpClient模拟访问带有嵌套对象参数的接口

    项目中涉及到外部服务调用时,会使用到postman来模拟测试,例如一个接口如下: @RequestMapping("/test") public void test(@RequestBody User user){ }     User类的属性包括id、name、age三个属性,那么当你使用postman调用接口时,就可以使用这三个参数传进去,它会自动映射到User对象中,或者使用...

风雨诗轩的博客 4073

Java使用HttpClient发送GET和POST(带参数)请求

发送GET和POST请求 最近和朋友在开展一个新的项目,需要用到JAVA后台,所以这两天我在努力的进行知识迁移和学习,毕竟对JAVA语言不是很熟悉,所以有许多东西需要学习的。今天我需要调用某平台的接口,需要用到常用的GET和POST请求。 看了需对代码示例,我的天哪,JAVA对待我这个新人,还真不友好,写个请求还需要弄一大堆代码,(据了解其实是有很好用的封装类库,我还不会用)。相比之下,Pytho...

YOU_hunter的博客 2万+

JAVA发送POST请求并利用alibaba.fastjson解析返回的多层嵌套JSON

索引背景简介获取网站的数据传输方式Java使用Post方式提交Http请求Java利用alibaba.fastjson解析JSON 背景简介 期末考完了闲得无聊,看到群里面某位兄台写了个爬虫通过学校临时成绩查询系统批量获取学生成绩(这儿本来想放链接的,但是那篇文章里面的敏感信息有点多。暂时决定不放链接了)。 不过网信中心及时更新了反爬措施,让这位兄台翻了车。 但是考完试实在闲得无聊,于是,准备用...

月光之傲的博客 2929
上一篇: java后台发送http请求(post,get)
下一篇: URL路径中传参
CSlbDN
博客等级 码龄11年 1粉丝 29原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值