国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

hutool Http 工具發(fā)送POST請(qǐng)求的幾種方式

這篇具有很好參考價(jià)值的文章主要介紹了hutool Http 工具發(fā)送POST請(qǐng)求的幾種方式。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

? ? ? ?

目錄

依賴

??Maven

??Gradle

實(shí)踐

hutool源碼

hutool調(diào)用實(shí)踐

其它自定義項(xiàng)



????????本質(zhì)上,HttpUtil中的get和post工具方法都是HttpRequest對(duì)象的封裝,因此如果想更加靈活操作Http請(qǐng)求,可以使用HttpRequest。今天咱們就列舉一下hutool工具中常用的幾種發(fā)送post請(qǐng)求的方式。

依賴

??Maven

maven項(xiàng)目添加依賴

<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-all</artifactId>
    <version>5.8.16</version>
</dependency>

??Gradle

Gradle項(xiàng)目添加依賴

implementation 'cn.hutool:hutool-all:5.8.16'

實(shí)踐

????????通過(guò)鏈?zhǔn)綐?gòu)建請(qǐng)求,我們可以很方便的指定Http頭信息和表單信息,最后調(diào)用execute方法即可執(zhí)行請(qǐng)求,返回HttpResponse對(duì)象。HttpResponse包含了服務(wù)器響應(yīng)的一些信息,包括響應(yīng)的內(nèi)容和響應(yīng)的頭信息。通過(guò)調(diào)用body方法即可獲取響應(yīng)內(nèi)容。

hutool源碼


    public static String post(String urlString, Map<String, Object> paramMap) {
        return post(urlString, paramMap, HttpGlobalConfig.timeout);
    }

    public static String post(String urlString, Map<String, Object> paramMap, int timeout) {
        return HttpRequest.post(urlString).form(paramMap).timeout(timeout).execute().body();
    }

    public static String post(String urlString, String body) {
        return post(urlString, body, HttpGlobalConfig.timeout);
    }

    public static String post(String urlString, String body, int timeout) {
        return HttpRequest.post(urlString).timeout(timeout).body(body).execute().body();
    }

hutool調(diào)用實(shí)踐

1、請(qǐng)求參數(shù)為JsonString的case

	public static void post1() {
		String param = "{\"StartTime\":\"2023-06-07 09:42:02\",\"EndTime\":\"2023-06-07 09:42:02\",\"StartIndex\":\"0\",\"PageSize\":\"30\"}";
		String result = HttpUtil.post("http://localhost:8080/hutool/test", param);
		System.out.println(result);
	}

2、請(qǐng)求參數(shù)為JsonObject 在轉(zhuǎn)String的case

public static void post2() {
		JSONObject param = JSONUtil.createObj();
		param.put("StartTime", "2023-06-07 09:42:02");
		param.put("EndTime", "2023-06-07 09:42:02");
		param.put("StartIndex", 0);
		param.put("PageSize", 30);
		String result = HttpUtil.post("http://localhost:8080/hutool/test", param.toString());
		System.out.println(result);
	}

3、請(qǐng)求參數(shù)為Map的case

	public static void post3() {
		Map<String, Object> param = new HashMap<String, Object>();
		param.put("StartTime", "2023-06-07 09:42:02");
		param.put("EndTime", "2023-06-08 09:42:02");
		param.put("StartIndex", "0");
		param.put("PageSize", "30");
		String result = HttpUtil.post("http://localhost:8080/hutool/test", param);
		System.out.println(result);
	}

4、通過(guò)鏈?zhǔn)秸{(diào)用的case

List<String> fls = Lists.newArrayList("document_id", "content");
			Map<String, Object> paramMap = Maps.newHashMap();
			paramMap.put("queryText", questionContent);
			paramMap.put("getRelativeScore", "true");
			paramMap.put("k", 3);
			paramMap.put("fls", fls);
			JSONObject jsonObject = JSONUtil.createObj();
			jsonObject.putAll(paramMap);
			LOGGER.info("keVecAskQuestion,body:{}", JSONUtil.toJsonStr(paramMap));
			String rpcResult = HttpRequest.post(keVecHost)
				.header("Content-Type", "application/json")
				.body(jsonObject.toString())
				.execute()
				.body();

其它自定義項(xiàng)

同樣,我們通過(guò)HttpRequest可以很方便的做以下操作:

  • 指定請(qǐng)求頭
  • 自定義Cookie(cookie方法)
  • 指定是否keepAlive(keepAlive方法)
  • 指定表單內(nèi)容(form方法)
  • 指定請(qǐng)求內(nèi)容,比如rest請(qǐng)求指定JSON請(qǐng)求體(body方法)
  • 超時(shí)設(shè)置(timeout方法)
  • 指定代理(setProxy方法)
  • 指定SSL協(xié)議(setSSLProtocol)
  • 簡(jiǎn)單驗(yàn)證(basicAuth方法)

官網(wǎng)地址:Hutool參考文檔文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-481057.html

到了這里,關(guān)于hutool Http 工具發(fā)送POST請(qǐng)求的幾種方式的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 使用hutool工具發(fā)送post請(qǐng)求

    ?import cn.hutool.http.HttpRequest; import cn.hutool.http.HttpResponse; import cn.hutool.json.JSONObject; import cn.hutool.json.JSONUtil; ? ? ? ? JSONObject jsonObject = JSONUtil.createObj(); ? ? ? ? ? ? jsonObject.put(\\\"shift\\\", \\\"D\\\"); ? ? ? ? ? ? jsonObject.put(\\\"model\\\", dataMap.get(\\\"MODEL\\\")); ? ? ? ? ? ? jsonObject.put(\\\"stage\\\", dataMap.

    2024年02月13日
    瀏覽(22)
  • java發(fā)送http請(qǐng)求的幾種方式,調(diào)用第三方接口的方法:HttpUtil、HttpURLConnection等

    參考:https://blog.csdn.net/yubin1285570923/article/details/126225347 put請(qǐng)求 post帶請(qǐng)求頭 get、delete類似… 使用JDK原生提供的net,無(wú)需其他jar包,代碼如下: 需要用到commons-httpclient-3.1.jar,maven依賴如下: 看一下我實(shí)際應(yīng)用的例子 需要用到httpclient-4.5.6.jar,maven依賴如下: RestTemplate 是由

    2024年01月18日
    瀏覽(34)
  • 【JavaScript】 發(fā)送 POST 請(qǐng)求并帶有 JSON 請(qǐng)求體的幾種方法

    ?在現(xiàn)代的前端開發(fā)中,與后端進(jìn)行數(shù)據(jù)交互是必不可少的。其中,發(fā)送 POST 請(qǐng)求并帶有 JSON 請(qǐng)求體是一種常見的需求。在本文中,我們將介紹在 JavaScript 中實(shí)現(xiàn)這一需求的幾種方法。 ? XMLHttpRequest 是一種傳統(tǒng)的發(fā)送網(wǎng)絡(luò)請(qǐng)求的方式。以下是一個(gè)使用 XMLHttpRequest 發(fā)送 POST 請(qǐng)

    2024年03月19日
    瀏覽(27)
  • Web:前端常用的幾種Http請(qǐng)求GET和POST樣例

    Web:前端常用的幾種Http請(qǐng)求GET和POST樣例

    1、簡(jiǎn)述 在Web開發(fā)過(guò)程中,少不了發(fā)起Http請(qǐng)求服務(wù)端的接口數(shù)據(jù),在不同的框架中使用了不同的Http請(qǐng)求方式,常用的請(qǐng)求有fetch、 ajax、 axios、XMLHttpRequest、request,以下樣例僅供參考。 2、Fetch Fetch API 是一種 JavaScript API,是一種基于 Promise 的現(xiàn)代API,用于在網(wǎng)絡(luò)中發(fā)送和接收

    2024年02月07日
    瀏覽(15)
  • post請(qǐng)求設(shè)置表單form-data格式的幾種方式

    post請(qǐng)求設(shè)置表單form-data格式的幾種方式

    我用默認(rèn)的post方法發(fā)送數(shù)據(jù)的時(shí)候發(fā)現(xiàn)后端獲取不到數(shù)據(jù),然而在network中看到參數(shù)是的確傳出去的了。而且用postman測(cè)試的時(shí)候也是可以的,比較了下兩個(gè)的不同發(fā)現(xiàn)是postman使用的是form-data格式,于是用form-data格式再次請(qǐng)求,發(fā)現(xiàn)OJBK 這兩種格式都是無(wú)法使用的: ? 方法一:

    2024年02月11日
    瀏覽(29)
  • HTTP請(qǐng)求的幾種方式

    HTTP請(qǐng)求的幾種方式

    HTTP(Hypertest Transfer Protocol)是用于傳輸像HTML這樣的超文本文件的應(yīng)用層協(xié)議。它被設(shè)計(jì)用于WEB瀏覽器端和WEB服務(wù)端的交互,但也有其它用途。HTTP遵循經(jīng)典的client-server模型,客戶端發(fā)起請(qǐng)求嘗試建立連接,然后等待服務(wù)端的應(yīng)答。HTTP是無(wú)狀態(tài)協(xié)議,這意味著服務(wù)端在兩次請(qǐng)求間

    2024年02月08日
    瀏覽(27)
  • java使用hutool工具類發(fā)送http或者h(yuǎn)ttps請(qǐng)求太香啦

    我們使用java內(nèi)置的http工具實(shí)現(xiàn)遠(yuǎn)程調(diào)用的時(shí)候,都是用try catch包一堆代碼,巨難受,今天看見有人使用hutool工具類那是天簡(jiǎn)單了呀,具體操作如下: 1,引入依賴 2, 如果不需要設(shè)置其他什么頭信息,代碼: 如果是https請(qǐng)求直接換url里面的http就行 返回信息格式: {\\\"code\\\":200

    2024年02月14日
    瀏覽(24)
  • 使用hutool發(fā)送POST請(qǐng)求

    使用hutool發(fā)送POST請(qǐng)求

    之前使用Java程序發(fā)送請(qǐng)求都是使用的HttpURLConnection,不太方便,可以使用hutool封裝好的方法。 返回結(jié)果包括響應(yīng)頭和響應(yīng)體兩部分,其中響應(yīng)體是后端通過(guò)@ResponseBody返回的數(shù)據(jù);響應(yīng)頭包含一些其他信息,比如cookie。 hutool參考文檔

    2024年02月11日
    瀏覽(27)
  • java業(yè)務(wù)代碼發(fā)送http請(qǐng)求(Post方式:請(qǐng)求參數(shù)為JSON格式;Get方式)

    實(shí)際開發(fā)中,可能需要發(fā)送http請(qǐng)求到第三方服務(wù)獲取數(shù)據(jù),于是就有以下應(yīng)用: 依賴: 假設(shè)我需要在我的業(yè)務(wù)代碼中調(diào)用該地址: url:http://xx.xx:xxxx/user/count 請(qǐng)求方法:post 內(nèi)容類型:application/json 請(qǐng)求參數(shù):id, username 返回參數(shù):code 響應(yīng)結(jié)果 int類型 ? ? ? ? ? ? ? ? ?

    2024年02月12日
    瀏覽(32)
  • 構(gòu)造http請(qǐng)求的幾種方式(附源碼)

    構(gòu)造http請(qǐng)求的幾種方式(附源碼)

    博主個(gè)人社區(qū):開發(fā)與算法學(xué)習(xí)社區(qū) 博主個(gè)人主頁(yè):Killing Vibe的博客 歡迎大家加入,一起交流學(xué)習(xí)~~ form (表單) 是 HTML 中的一個(gè)常用標(biāo)簽. 可以用于給服務(wù)器發(fā)送 GET 或者 POST 請(qǐng)求. form 的重要參數(shù): action: 構(gòu)造的 HTTP 請(qǐng)求的 URL 是什么. method: 構(gòu)造的 HTTP 請(qǐng)求的 方法 是 GET 還是

    2023年04月09日
    瀏覽(28)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包