An open API service indexing awesome lists of open source software.

https://github.com/tomoncle/http-requests

A simple HTTP tool class similar to Python requests.
https://github.com/tomoncle/http-requests

http https java8 okhttp3 simple

Last synced: 3 months ago
JSON representation

A simple HTTP tool class similar to Python requests.

Awesome Lists containing this project

README

        

# 简单的 Java http 工具类

[![Maven Package](https://github.com/tomoncle/http-requests/actions/workflows/maven-publish.yml/badge.svg)](https://github.com/tomoncle/http-requests/actions/workflows/maven-publish.yml)

# 安装

* 1.在项目pom.xml添加仓库

```xml


github
github Repositories
https://tomoncle.github.io/maven/repository

```

* 2.引入依赖

```xml

io.github.tomoncle
http-requests
1.0.0

```

# 使用

* GET请求

```java
public class TestRequests {
@SneakyThrows
@Test
public void get() {
String request = Requests.GET.request("https://www.baidu.com");
assert request != null;
}
}
```

* POST请求

```java
public class TestRequests {
@SneakyThrows
@Test
public void post() {
String url = "https://api.tomoncle.com/post";
// set header
Map header = new HashMap<>();
header.put("Cookies", "abc");
// set body
SimpleRequestBody requestBody = SimpleRequestBody.builder(DataType.FORM)
.setParam("username", "tomoncle")
.build();
// return json or text
String request = Requests.POST.request(url, requestBody, Headers.of(header));
assert request != null;
// return Response
Response response = Requests.POST.response(url, requestBody, Headers.of(header));
assert response.code() == 200;
response.close();
}

}
```

* 上传文件

```java
public class TestRequests {

@Test
@SneakyThrows
public void testUpload() {
Map headers = new HashMap<>();
headers.put("token", "123456");

Map data = new HashMap<>();
data.put("user1", "tom");
data.put("user2", "jack");

Requests.POST.upload(
"https://api.tomoncle.com/fileUpload",
"/tmp/__diesel_schema_migrations.png",
data,
headers);
}

}
```

* 对于Json处理

```java
public class TestRequests {
@SneakyThrows
@Test
public void json() {
String request = Requests.GET.request("https://api.tomoncle.com");
JSONObject jsonObject = JSONObject.parseObject(request);
assert Objects.equals(jsonObject.getString("code"), "200");
}

}
```

* 支持:`GET`, `POST`, `HEAD`, `DELETE`, `PUT`, `PATCH`