100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > http封装工具类

http封装工具类

时间:2024-03-27 23:06:47

相关推荐

http封装工具类

1.pom引入包

<dependency><groupId>io.github.admin4j</groupId><artifactId>http</artifactId><version>0.4.6</version></dependency>

2.封装http配置类

import lombok.Data;import .Proxy;public class HttpConfig {/*** 读取超时时间,秒*/private long readTimeout = 30;/*** 链接超时时间*/private long connectTimeout = 30;private boolean followRedirects = false;/*** 最大的连接数*/private int maxIdleConnections = 5;/*** 最大的kepAlive 时间 秒*/private long keepAliveDuration = 5;private String userAgent = "OKHTTP";/*** 是否支持cookie*/private boolean cookie = false;private ProxyConfig proxy;@Datapublic static class ProxyConfig {private Proxy.Type type = Proxy.Type.HTTP;private String host;private Integer port = 80;private String userName;private String password;}}

3.使用demo

import com.alibaba.fastjson.JSONObject;import io.github.admin4j.http.HttpRequest;import io.github.admin4j.http.core.HttpHeaderKey;import io.github.admin4j.http.core.Pair;import io.github.admin4j.http.util.HttpJsonUtil;import io.github.admin4j.http.util.HttpUtil;import okhttp3.Response;import java.io.File;import java.util.HashMap;import java.util.Map;/*** 一行代码搞定Http请求,真强!* OKHttp OkHttpUtil做了一层封装,使Http请求变得无比简单。*/public class MainTest {public static void main(String[] args) {//GETResponse response = HttpUtil.get("/search", Pair.of("q", "okhttp"));System.out.println("response = " + response);//JSON 格式的bodyokhttp3.Response post = HttpUtil.post("/robot/send?access_token=27f5954ab60ea8b2e431ae9101b1289c138e85aa6eb6e3940c35ee13ff8b6335","{\"msgtype\": \"text\",\"text\": {\"content\":\"【反馈提醒】我就是我, 是不一样的烟火\"}}");System.out.println("post = " + post);// form 请求Map<String, Object> formParams = new HashMap<>(16);formParams.put("username", "admin");formParams.put("password", "admin123");HttpUtil.postForm("http://192.168.1.13:9100/auth/login",formParams);//返回格式为JSON的 可以使用 HttpJsonUtil 自动返回JsonObjectJSONObject object = HttpJsonUtil.get("/search",Pair.of("q", "http"),Pair.of("username", "agonie18"));System.out.println("object = " + object);//文件上传File file = new File("C:\\Users\\andanyang\\Downloads\\Sql.txt");Map<String, Object> formParams = new HashMap<>();formParams.put("key", "test");formParams.put("file", file);formParams.put("token", "WXyUseb-D4sCum-EvTIDYL-mEehwDtrSBg-Zca7t:qgOcR2gUoKmxt-VnsNb657Oatzo=:eyJzY29wZSI6InpoYW56aGkiLCJkZWFkbGluZSI6MTY2NTMwNzUxNH0=");Response response = HttpUtil.upload("/", formParams);System.out.println(response);//下载文件HttpUtil.down("/admin4j/common-http", "path/");//HttpRequest 链式请求// # getResponse response = HttpRequest.get("/?skin=rec&type=repository").queryMap("q", "admin4j").header(HttpHeaderKey.USER_AGENT, "admin4j").execute();System.out.println("response = " + response);//# post formResponse response = HttpRequest.get("http://192.168.1.13:9100/auth/login").queryMap("q", "admin4j").header(HttpHeaderKey.USER_AGENT, "admin4j").form("username", "admin").form("password", "admin123").execute();System.out.println("response = " + response);}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。