...

Java OKHttp简单使用

OKHttp是一个三方Java接口请求库。

添加Maven依赖

<dependency>
	<groupId>com.squareup.okhttp3</groupId>
	<artifactId>okhttp</artifactId>
	<version>4.0.0</version>
</dependency>

发送请求

发送Get请求-带请求头

public void testOkHttpGet() throws IOException {
	OkHttpClient client = new OkHttpClient();
	Request request = new Request.Builder()
			.url("https://postman-echo.com/get?a=1&b=2")
			.addHeader("token", "test")
			.build();
	Response response = client.newCall(request).execute();
	System.out.println(response.body().string());
}

发送Post表单请求

public void testOkHttpPostForm() throws IOException {
	OkHttpClient client = new OkHttpClient();
	// 构造form格式请求数据
	RequestBody formBody = new FormBody.Builder()
			.add("a", "1")
			.add("b", "2")
			.build();

	Request request = new Request.Builder()
			.url("https://postman-echo.com/post")
			.addHeader("token", "test")
			.post(formBody)
			.build();

	Response response = client.newCall(request).execute();
	System.out.println(response.body().string());
}

发送Put-Json请求

public void testOkHttpPutJson() throws IOException {
	OkHttpClient client = new OkHttpClient();

	String jsonString = "{\"a\": 1, \"b\": 2}";
	RequestBody jsonBody = RequestBody.create(jsonString,
			MediaType.parse("application/json; charset=utf-8"));
	
	Request request = new Request.Builder()
			.url("https://postman-echo.com/put")
			.addHeader("token", "test")
			.put(jsonBody)
			.build();

	Response response = client.newCall(request).execute();
	if (response.isSuccessful() && response.body() != null) {  
	    System.out.println("Response Status Code: " + response.code());  
	    System.out.println("Response Body: " + response.body().string());  
	}
}

响应

  • response.code():状态码
  • response.isSuccessful():响应是否成功
  • response.body():响应体,可以通过.string()转文本

响应判断和输出

if (response.isSuccessful() && response.body() != null) {
	System.out.println("Response Status Code: " + response.code());  
    System.out.println("Response Body: " + response.body().string());
}
posted @ 2025-04-23 19:10  韩志超  阅读(86)  评论(0)    收藏  举报