【Hutool】Hutool工具類之Http工具——HttpUtil


  最簡單最直接的上手可以參見參考文檔http://hutool.mydoc.io/?t=216015

   Http協議的介紹,請參考web隨筆http://www.cnblogs.com/jiangbei/p/6681215.html

   受夠了的HttpClient?那Hutool的HttpUtil值得一試!

一、HttpUtil 

   快讀使用:

      發送get請求,包括有參與無參 

        示例:

 String url = "http://www.sogou.com"; Map<String, Object> paramMap = new HashMap<>(); paramMap.put("query", 10086); // 無參GET請求
        String result = HttpUtil.get(url); // 帶參GET請求
        String result2 = HttpUtil.get(url, paramMap);

 

        對應源碼:

/**
     * 發送get請求
     * 
     * @param urlString 網址
     * @return 返回內容,如果只檢查狀態碼,正常只返回 "",不正常返回 null
     */
    public static String get(String urlString) {
        return HttpRequest.get(urlString).execute().body();
    }
    
    /**
     * 發送get請求
     * 
     * @param urlString 網址
     * @param paramMap post表單數據
     * @return 返回數據
     */
    public static String get(String urlString, Map<String, Object> paramMap) {
        return HttpRequest.get(urlString).form(paramMap).execute().body();
    }
View Code

      發送post請求

        這里直接引用文檔的示例:

HashMap<String, Object> paramMap = new HashMap<>(); paramMap.put("city", "北京"); String result= HttpUtil.post("https://www.baidu.com", paramMap); //文件上傳只需將參數中的鍵指定(默認file),值設為文件對象即可,對於使用者來說,文件上傳與普通表單提交並無區別
paramMap.put("file", FileUtil.file("D:\\face.jpg")); String result= HttpUtil.post("https://www.baidu.com", paramMap);

      對應源碼:

/**
     * 發送post請求
     * 
     * @param urlString 網址
     * @param paramMap post表單數據
     * @return 返回數據
     */
    public static String post(String urlString, Map<String, Object> paramMap) {
        return HttpRequest.post(urlString).form(paramMap).execute().body();
    }

    /**
     * 發送post請求
     * 
     * @param urlString 網址
     * @param params post表單數據
     * @return 返回數據
     */
    public static String post(String urlString, String params) {
        return HttpRequest.post(urlString).body(params).execute().body();
    }
View Code

二、HttpRequest與HttpResponse

  不滿足於高度化的工具類封裝,想擁有更多自定義請求與響應處理,可以使用HttpRequest與HttpResponse

  快速上手:

String result2 = HttpRequest.post(url) .header(Header.USER_AGENT, "Hutool http") .form(paramMap) .execute().body();

  // 包括封裝的一些常量Header Status等參見源碼

  其它自定義項如下圖所示:

  

    HttpResponse的處理不再贅述

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM