Hutool 调用https请求httputil方法的使用实例get,post,put,delete

解决https调用证书问题

这里使用hutool的httputil请求是因为在使用
int statusCode = httpClient.executeMethod(method);
中对请求https请求返回来一个需要配置证书的问题,
使用hutool封装的httputil的请求就不会有这个问题。
下边有四种请求方式的具体使用实例。有需要补充的地方下方留言

在这里插入图片描述

  • 代码如下:
public static void main(String[] args){
		String url;
		try {
			url =  "https://public.creditchina.gov.cn/private-api/catalogSearchHome"
					+ "?keyword="+ URLEncoder.encode("a", "UTF-8")
					+ "&scenes=defaultScenario"
					+ "&tableName=credit_xyzx_tyshxydm" + "&searchState=2"
					+ "&entityType=1,2,4,5,6,7,8" + "&templateId=" + "&page="+1
					+ "&pageSize="+10;
			System.out.println(HttpUtil
              .createGet(url)
                 .execute()
                 .charset("utf-8")
                 .body() );
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}
		
	}

调用post代码示例

POST请求示例:

		String object = 
				HttpUtil.createPost(url)
					.body("fileId",rowguid) //post提交携带的参数
					.header("token",token)  //验证身份的token
					.execute().body();      //execute 执行

调用put请求代码示例

put请求示例

		Map<String, String> map = new HashMap<String, String>();
			map.put("token", token);
		HttpRequest request = HttpRequest.put(url).addHeaders(map)
					.body("id", rowguid).body("status", "1").
            			.execute().body();
		Method method = request.getMethod();
		//这个转换方法也是调用hutool的
		String object = Convert.toStr(method.values(), "utf-8");	
		//上边那种或者下边这种都行
		String object = HttpRequest.put(url).addHeaders(map)
					.body("id", rowguid).body("status", "1").
            			.execute().body();	
         	

调用delete请求代码示例

delete代码

 		Map<String, String> map = new HashMap<String, String>();
		map.put("token", token);
		//发送delete请求接收响应体
		String object = 
			HttpUtil.createRequest(Method.DELETE, url)
					.addHeaders(map).execute().body();

封装的请求实例更加灵活的应用

/**
	 * hutool的httputilPOST请求方法
	 * @param map
	 * @return
	 */
	public static String httpHutoolPost(String url, JSONObject json,Map<String, String> map)
			 {
		String object = HttpRequest.post(url).form(json)
				.addHeaders(map).execute().body();
		log2.info("httpPost请求地址:"+url+" 参数:"+json+" 返回结果:"+object);
		return object;
	}
	
	/**
	 * hutool的httputilGET请求方法
	 * @param token
	 * @return
	 */
	public static String httpHutoolGet(String url, Map<String, String> map)
			 {
		String object = HttpRequest.get(url).addHeaders(map).execute().body();
		log2.info("httpGet请求地址:"+url+" 返回结果:"+object);
		return object;
	}
	
	/**
	 * hutool的httputilPUT请求方法
	 * @param jsons
	 * @return
	 */
	public static String httpHutoolPut(String url, Map<String, String> map,JSONObject jsons)
			 {
		String object = HttpRequest.put(url).addHeaders(map)
				.form(jsons).execute().body();
		log2.info("httpPUT请求地址:"+url+" 参数:"+jsons+" 返回结果:"+object);
		return object;
	}
  • 4
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 使用HutoolHttpUtil发起POST请求的步骤如下: 1. 导入HutoolHttpUtil类: ```java import cn.hutool.http.HttpUtil; ``` 2. 构造POST请求参数: ```java Map<String, Object> paramMap = new HashMap<>(); paramMap.put("param1", "value1"); paramMap.put("param2", "value2"); ``` 3. 发起POST请求: ```java String result = HttpUtil.post("http://example.com/api", paramMap); ``` 其中,第一个参数是请求的URL,第二个参数是POST请求的参数,返回值是服务器响应的结果。 完整的示例代码如下: ```java import cn.hutool.http.HttpUtil; import java.util.HashMap; import java.util.Map; public class HttpUtilDemo { public static void main(String[] args) { Map<String, Object> paramMap = new HashMap<>(); paramMap.put("param1", "value1"); paramMap.put("param2", "value2"); String result = HttpUtil.post("http://example.com/api", paramMap); System.out.println(result); } } ``` ### 回答2: hutool是Java工具包中的一款非常实用的工具库,其中的httputil包含了发送HTTP请求方法,可以方便快捷地发出POST请求并获取响应结果。具体流程如下: 1. 首先需要导入hutoolhttputil包。 ```java import cn.hutool.http.HttpUtil; ``` 2. 接下来,我们需要定义POST请求的url和传递参数。 ```java String url = "http://example.com/api/"; Map<String, Object> paramMap = new HashMap<>(16); paramMap.put("param1", "value1"); paramMap.put("param2", "value2"); ``` 3. 然后,我们可以使用httputilpost方法来发送POST请求,并获取响应结果。 ```java String result = HttpUtil.post(url, paramMap); System.out.println(result); ``` 其中,post方法的第一个参数是请求的url,第二个参数是传递的参数。返回的是POST请求的响应结果。当然,如果需要带上Header信息,则可以在post方法中加上headers参数,如下: ```java Map<String,String> headers = new HashMap<>(16); headers.put("Content-Type", "applicaton/json"); String result = HttpUtil.post(url, paramMap, headers); ``` 这样,我们就可以方便地使用hutoolhttputil四行代码完成POST请求的发送和响应结果的获取。这对于我们在Java项目中需要发送HTTP请求时非常方便,也可以提高我们的开发效率。 ### 回答3: 首先,需要导入hutoolhttputil工具类,代码如下: ``` import cn.hutool.http.HttpUtil; ``` 然后,构造post请求,在请求体中添加参数,代码如下: ``` String url = "http://example.com/api"; Map<String, Object> params = new HashMap<>(); params.put("param1", "value1"); params.put("param2", "value2"); String result = HttpUtil.post(url, params); ``` 其中,url为需要请求的接口地址,params为需要传递的参数,可以自行添加或修改。 最后,发送请求并获取返回结果即可。 注意,发送post请求需要根据接口要求设置请求头,可使用HttpUtil.createPost方法进行高级设置。同时,接口返回结果需要根据实际情况进行解析。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值