最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java調(diào)用參數(shù)類型是application/x-www-form-urlencoded的API問題

 更新時間:2024年09月29日 08:52:58   作者:謝月  
在使用Postman進行接口測試時,對于POST請求,需將請求頭設置為application/x-www-form-urlencoded,并將參數(shù)轉為String類型,通常在GET請求中,參數(shù)直接拼接在URL后,本文通過具體實例,詳細講解了參數(shù)處理的方法,適合API開發(fā)者參考

一、分析

首先用postman測試對應的接口

測試如下:

其中請求頭中content-type為application/x-www-form-urlencoded

參數(shù)是:

queryParam:{"id":"mobile","userName":"name","mobile":"12345678"}

注意:

我們進行API調(diào)用時,參數(shù)需要轉為String類型,平時我們調(diào)用get請求application/x-www-form-urlencoded參數(shù)都是直接拼接在url后面, url?字段名=值&字段名=值,所以這里用同樣的方式進行參數(shù)處理。

二、代碼樣例

public String getNameCode(String name,String phone) throws Exception {
        // 1.組裝數(shù)據(jù),以及請求頭
        Map header = new HashMap();
        String newParam = "queryParam={\"id\":\"mobile\",\"userName\":\""+name+"\",\"mobile\":\""+phone+"\"}";
        header.put("content-type","application/x-www-form-urlencoded");
        // 3.調(diào)用接口查詢
        String testRst = HttpUtil.doPost("http://localhost/sv/query",newParam,header);
        if(testRst==null){
            throw new Exception("bomc接口響應失敗,請稍后重試");
        }
        // 4.解析結果集
        JSONObject json = JSONObject.parseObject(testRst);
        JSONArray item = json.getJSONArray("items");
        JSONObject obj = item.getJSONObject(0);
        String account = (String) obj.get("userAccount");
        return account;
}
 
public static String doPost(String url, String params, Map header) throws Exception {
        CloseableHttpClient httpclient = HttpClients.createDefault();
        HttpPost httpPost = new HttpPost(url);// 創(chuàng)建httpPost
        logger.info("POST請求url:" + url);
        for (Iterator iter = header.keySet().iterator(); iter.hasNext(); ) {
            String key = String.valueOf(iter.next());
            String value = String.valueOf(header.get(key));
            httpPost.setHeader(key, value);
        }
        RequestConfig requestConfig = RequestConfig.custom().setConnectionRequestTimeout(20000)
                .setSocketTimeout(20000).setConnectTimeout(20000).build();
        httpPost.setConfig(requestConfig);
        //設置參數(shù)
        logger.info("POST請求參數(shù):" + params);
 
        StringEntity entity = new StringEntity(params, "utf-8");
        entity.setContentEncoding("UTF-8");
        entity.setContentType("application/json");
        httpPost.setEntity(entity);
        CloseableHttpResponse response = null;
        try {
            response = httpclient.execute(httpPost);
            StatusLine status = response.getStatusLine();
            int state = status.getStatusCode();
            if (state == HttpStatus.SC_OK) {
                HttpEntity responseEntity = response.getEntity();
                String jsonString = EntityUtils.toString(responseEntity,"UTF-8");
                return jsonString;
            } else {
                logger.error("請求返回:" + state + "(" + url + ")");
            }
        } finally {
            if (response != null) {
                try {
                    response.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
            try {
                httpclient.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
        return null;
}

總結

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • 全面解讀Java?NIO(看這篇就夠了)

    全面解讀Java?NIO(看這篇就夠了)

    Java?NIO是Java1.4之后推出來的一套IO接口,NIO提供了一種完全不同的操作方式,?NIO支持面向緩沖區(qū)的、基于通道的IO操作,這篇文章主要介紹了Java?NIO詳解(看這篇就夠了),需要的朋友可以參考下
    2023-05-05
  • 基于java高并發(fā)處理方案

    基于java高并發(fā)處理方案

    這篇文章主要介紹了基于java高并發(fā)處理方案,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • logback?OutputStreamAppender高效日志輸出源碼解析

    logback?OutputStreamAppender高效日志輸出源碼解析

    這篇文章主要介紹了為大家logback?OutputStreamAppender日志輸出效率提升示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-10-10
  • Hutool開發(fā)MapUtil工具類使用示例

    Hutool開發(fā)MapUtil工具類使用示例

    這篇文章主要為大家介紹了Hutool開發(fā)MapUtil工具類使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-10-10
  • java?-jar指定spring配置文件完整示例

    java?-jar指定spring配置文件完整示例

    這篇文章主要介紹了java?-jar指定spring配置文件的相關資料,通過示例講解了激活dev profile、設置外部配置路徑、直接指定配置文件名,需要的朋友可以參考下
    2025-06-06
  • 把spring boot項目發(fā)布tomcat容器(包含發(fā)布到tomcat6的方法)

    把spring boot項目發(fā)布tomcat容器(包含發(fā)布到tomcat6的方法)

    這篇文章主要介紹了把spring boot項目發(fā)布tomcat容器(包含發(fā)布到tomcat6的方法),然后在文章給大家提到了如何將Spring Boot項目打包部署到外部Tomcat,需要的朋友參考下吧
    2017-11-11
  • Spring?MVC內(nèi)置過濾器功能示例詳解

    Spring?MVC內(nèi)置過濾器功能示例詳解

    這篇文章主要為大家介紹了Spring?MVC內(nèi)置過濾器使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09
  • feign name指定服務調(diào)用無效問題及解決

    feign name指定服務調(diào)用無效問題及解決

    文章主要介紹了FeignClient注解的常用屬性,并通過一個具體的例子說明了為什么某個Feign調(diào)用需要使用url指定路徑才能訪問,最后,文章給出了解決辦法,即使用path屬性指定前綴
    2024-11-11
  • java實現(xiàn)客戶端向服務器發(fā)送文件

    java實現(xiàn)客戶端向服務器發(fā)送文件

    這篇文章主要為大家詳細介紹了java實現(xiàn)客戶端向服務器發(fā)送文件,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • Java中的Spring?如何處理循環(huán)依賴

    Java中的Spring?如何處理循環(huán)依賴

    這篇文章主要介紹了Java中的Spring?如何處理循環(huán)依賴,依賴指的是Bean與Bean之間的依賴關系,循環(huán)依賴指的是兩個或者多個Bean相互依賴,關于更多Spring?處理循環(huán)依賴的詳情,需要的朋友可以參考下面文章具體內(nèi)容
    2022-05-05

最新評論

酉阳| 会泽县| 沧源| 黄浦区| 新丰县| 武冈市| 潼南县| 宾阳县| 寿光市| 凤城市| 湘西| 汾阳市| 手机| 贵南县| 德惠市| 温泉县| 内江市| 信丰县| 北辰区| 金沙县| 新昌县| 囊谦县| 宜章县| 正定县| 全州县| 微博| 四川省| 广宁县| 茶陵县| 饶阳县| 资兴市| 阿坝| 垦利县| 夏河县| 金沙县| 收藏| 云梦县| 甘肃省| 锦州市| 驻马店市| 油尖旺区|