📅  最后修改于: 2023-12-03 15:03:25.383000             🧑  作者: Mango
org.json-HTTP是一个Java HTTP客户端,基于org.json库,支持RESTful风格的API。org.json-HTTP使用简单,轻量级,可用于各种Java应用程序,包括Android应用程序。
在你的项目中,需要添加以下依赖:
<dependency>
<groupId>com.github.johanneslichtenberger</groupId>
<artifactId>org.json-HTTP</artifactId>
<version>1.1.0</version>
</dependency>
org.json-HTTP支持GET、POST、PUT、DELETE等HTTP方法。以下是一个GET请求的示例:
HTTP http = new HTTP();
Response response = http.get("https://jsonplaceholder.typicode.com/todos/1");
JSONObject jsonObject = new JSONObject(response.getBody());
System.out.println(jsonObject.toString(2));
以上代码发送了一个GET请求到 https://jsonplaceholder.typicode.com/todos/1 ,并解析返回的JSON数据。
可以通过setHeaders和setParameters方法设置HTTP请求头和参数。以下是一个POST请求的示例:
HTTP http = new HTTP();
http.setHeaders(Collections.singletonMap("Content-Type", "application/json"));
JSONObject requestJson = new JSONObject();
requestJson.put("title", "foo");
requestJson.put("body", "bar");
requestJson.put("userId", 1);
Response response = http.post("https://jsonplaceholder.typicode.com/posts", requestJson.toString());
System.out.println(response.getCode());
以上代码发送了一个POST请求到 https://jsonplaceholder.typicode.com/posts ,并设置Content-Type请求头和请求体参数。
org.json-HTTP支持异步请求,可以使用AsyncHTTP类。以下是一个异步GET请求的示例:
AsyncHTTP asyncHTTP = new AsyncHTTP();
asyncHTTP.get("https://jsonplaceholder.typicode.com/todos/1", new HTTPCallback() {
@Override
public void onSuccess(Response response) {
try {
JSONObject jsonObject = new JSONObject(response.getBody());
System.out.println(jsonObject.toString(2));
} catch (JSONException e) {
e.printStackTrace();
}
}
@Override
public void onError(Exception e) {
e.printStackTrace();
}
});
以上代码发送了一个异步GET请求到 https://jsonplaceholder.typicode.com/todos/1 ,并在请求成功或失败时执行回调方法。
org.json-HTTP是一个简单易用的Java HTTP客户端库,支持RESTful风格的API。无论是同步请求还是异步请求,都可以轻松地完成HTTP通信。如果你正在开发Java应用程序,不妨试试org.json-HTTP吧!