首页 > 编程语言 >java 通用 post 请求

java 通用 post 请求

时间:2022-11-14 16:23:17浏览次数:61  
标签:java 请求 jsonParam JSONObject url httpPost put post

java 实现 Http的 Post 请求  用 Json 为参数

调用:

//_http_url_cdr为
//"http://10.10.10.243:15642/call/upload/ctiCdrUpload"

//eventJson 为
//{"callid":"1635822668.528","callto":"6700(1008)","pincode":"","srctrunkname":"MNWG","status":"ANSWERED"}
                 
//Http请求 
httpPost(_http_url_cdr,eventJson);

参数手动生成函数

public static void httpPost(String url,String eventJson){
        //发送请求的URL
        //String url = "http://10.10.10.243:15642/call/upload/ctiCdrUpload";
        logger.debug("httpPost() 准备HttpPost请求! " + url + " " + "");

        //请求内容  示例
        /* 
        {
            "event": "NewCdr",
                "callid": "1627349862.433",
                "timestart": "2021-07-27 09:37:42",
                "callfrom": "1008",
                "callto": "1009"
        }*/
        //请求内容  示例 手动生成
        /*
        JSONObject jsonParam = new JSONObject();
        jsonParam.put("event","NewCdr");
        jsonParam.put("callid","1627349862.433");
        jsonParam.put("timestart","2021-07-27 09:37:42");
        jsonParam.put("callfrom","1008");
        jsonParam.put("callto","1009");
        jsonParam.put("callduraction","16");
        jsonParam.put("talkduraction","11");
        jsonParam.put("srctrunkname","");
        jsonParam.put("dsttrcunkname","");
         */

        //将字符串转化成JSONObject
        JSONObject jsonParam= JSON.parseObject(eventJson);

        logger.debug("httpPost() HttpPost请求参数: " + jsonParam.toJSONString() + " " + "");
        //发送Http Post请求
        JSONObject jsonResult=httpPostSendRequest(url,jsonParam);

        logger.debug("httpPost() HttpPost请求结果: " + jsonResult.toString() + " " + "");
    }

java通用 Http Post 请求 方法

    public static JSONObject httpPostSendRequest(String url,JSONObject param){
        //定义接收数据
        JSONObject result = new JSONObject();
        HttpPost httpPost = new HttpPost(url);
        CloseableHttpClient client = HttpClients.createDefault();
        //请求参数转JOSN字符串
        StringEntity entity = new StringEntity(param.toJSONString(), "UTF-8");
        entity.setContentEncoding("UTF-8");
        entity.setContentType("application/json");
        httpPost.setEntity(entity);
        try {
            HttpResponse response = client.execute(httpPost);
            if (response.getStatusLine().getStatusCode() == 200) {
                result = JSON.parseObject(EntityUtils.toString(response.getEntity(), "UTF-8"));
            }
        } catch (Exception e) {
            e.printStackTrace();
            //result.put("error", "连接错误!");
            logger.error("httpPostSendRequest() HttpPost " + "=======连接错误=======");
        }
        return result;
    }

感谢:huatian007

https://www.cnblogs.com/huatian007/p/16484425.html

标签:java,请求,jsonParam,JSONObject,url,httpPost,put,post
From: https://www.cnblogs.com/hailexuexi/p/16889369.html

相关文章

  • 第七章-SSRF服务端请求伪造
    第一节SSRF漏洞原理介绍1.1SSRF漏洞定义SSRF(server-siterequestforery,服务端请求伪造)是一种构造请求,由服务端发起请求的安全漏洞。一般情况下,SSRF的目标就是与外部......
  • Java + POI导出富文本的内容到word文档
    一、需求:当创建使用富文本编辑器,操作完的数据,传输到后台都是带有html标签的。如:<h1>标题头</h1><h2>第二个标题</h2><ahref="www.baidu.com">百度搜索</a>我们想把富文......
  • Java json 字符串转化 JSONObject
    json字符串转化JSONObjectStrings="{\"msg\":\"操作成功\",\"code\":200,\"data\":{\"bizTypeList\":[{\"bizname\":\"测试一\"},{\"bizname\":\"测试二\"},{\&q......
  • supervisor管理java进程
    安装yuminstallsupervisor设置开机启动systemctlenablesupervisord启动supervisordsystemctlstartsupervisord配置java进程[program:monitorapi]command=......
  • 关于poi取消合并区域的方法-java
    //主要用于原来的excel模板已经存在合并区域、再次合并会导致合并异常privatebooleanremoveMergedRegion(Sheetsheet,CellRangeAddressmergedRegionToRemove){......
  • Java中通过反射+自定义注解判断对象中部分属性是否为空,返回为空字段的名称或自定义含
    场景若依管理系统前后端分离版基于ElementUI和SpringBoot怎样实现Excel导入和导出:https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/108278834在上面进行exc......
  • java基础笔记
    java的数据类型分为两大类  进制前缀二进制:0b八进制:0十六进制:0xJava会直接将它们转换为十进制输出 float、double并不能准确表示每一位小数,对于有的小数只能无......
  • 《JavaSE-第十九章》之Collection
    《JavaSE-第十九章》之Collection前言在你立足处深挖下去,就会有泉水涌出!别管蒙昧者们叫嚷:“下边永远是地狱!”博客主页:​​KC老衲爱尼姑的博客主页​​​​博主的github,......
  • Java课后习题易错点
    Chapter1基础知识//JavaAPIcontainspredefinedclassesandinterfacesfordevelopingJavaprograms.JavaAPI包含用于开发Java程序的预定义类和接口。.JavaJD......
  • javascript对象和内置对象
    了解对象对象是什么?对象是一组无序的相关属性和方法集合,js中所有事物都是对象,例如字符串,数值,数组,函数等对象是由属性和方法组成的属性:事物的特征,在对象中用属性来表示(常......