• 接口测试之HttpClient


    一.Get请求测试

    测试依赖

         <dependency>
                <groupId>org.apache.httpcomponents</groupId>
                <artifactId>httpclient</artifactId>
                <version>4.5.3</version>
            </dependency>
            <dependency>
                <groupId>log4j</groupId>
                <artifactId>log4j</artifactId>
                <version>1.2.17</version>
            </dependency>
    
            <dependency>
                <groupId>com.alibaba</groupId>
                <artifactId>fastjson</artifactId>
                <version>1.2.28</version>
            </dependency>
    
    public static String getResult(String url,Map<String, Object> queryMap,Map<String, Object> postMap){
            //使用方法
            String host = "http://localhost:8081/";
            //1、公共参数
            String appid = "2c844a8b24b047d1a4c350f07240d2dc";
            String appsecret = "d75203566ed744a1a6ef90b9d22c46e7";
            String noncestr = "32412423";
            String erp = "e3";
            String erpVersion = "1.0";
    
            // postMap.put("type", "中文");
            //4、求出签名和请求串
            String[] rets = GetSignUtils.genSign(appid, appsecret, noncestr, erp, erpVersion,
                    queryMap, postMap);//如果非POST请求则最后一个参数postMap为null即可
    
            System.out.println(rets[1]);
            String httpGet = HttpClientUtil.HttpGet(host + url + "?" + rets[1]);
            return httpGet;
        }

    二.Post请求测试

        public static String postResult(String url,Map<String,Object> queryMap,Map<String,Object> postMap,JSONObject jsonParam){
            //使用方法
            String host = "http://localhost:8081/";
            //1、公共参数
            String appid = "2c844a8b24b047d1a4c350f07240d2dc";
            String appsecret = "d75203566ed744a1a6ef90b9d22c46e7";
            String noncestr = "32412423";
            String erp = "e3";
            String erpVersion = "1.0";
            String[] rets = GetSignUtils.genSign(appid, appsecret, noncestr, erp, erpVersion,
                    queryMap, postMap);//如果非POST请求则最后一个参数postMap为null即可
            String uri = host + url +"?"+ rets[1];
            System.out.println(uri);
            HttpPost httpPost = new HttpPost(uri);
            CloseableHttpClient client = HttpClients.createDefault();
            String respContent = null;
    //        json方式
    
            StringEntity entity = new StringEntity(jsonParam.toString(),"utf-8");//解决中文乱码问题
            entity.setContentEncoding("UTF-8");
            entity.setContentType("application/json");
            httpPost.setEntity(entity);
            System.out.println();
    
            HttpResponse resp = null;
            try {
               resp = client.execute(httpPost);
            if(resp.getStatusLine().getStatusCode() == 200) {
                HttpEntity he = resp.getEntity();
                respContent = EntityUtils.toString(he,"UTF-8");
            }
            } catch (IOException e) {
                e.printStackTrace();
            }
            return respContent;
        }
  • 相关阅读:
    19 Activity
    18 自定义对话框(CustomDialog)的应用
    17 AlertDialog的应用
    16 PopupWindow的应用
    15 Toast控件的应用
    14 FrameLayout布局
    13 用户登录界面
    12 BMI计算器
    11 RadioButton控件的应用
    004 虚拟机性能监控与故障处理工具
  • 原文地址:https://www.cnblogs.com/wangxiayun/p/9078200.html
Copyright © 2020-2023  润新知