导入依赖
implementation("com.squareup.okhttp3:okhttp:4.9.0")
创建一个工具类
package com.sakura.test;
import okhttp3.Callback;
import okhttp3.FormBody;
import okhttp3.OkHttpClient;
import okhttp3.Request;
//OKHttp工具类
public class OkHttpUtil {
//GET请求 回调
public static void getOkHttp(String url, Callback callback) {
OkHttpClient client = new OkHttpClient();
Request request = new Request.Builder()
.url(url)
.get()
.build();
client.newCall(request).enqueue(callback);
}
//POST请求
public static void PostOkHttp(String url, FormBody.Builder builder, Callback callback) {
OkHttpClient client = new OkHttpClient();
FormBody formBody = builder.build();
Request request = new Request.Builder()
.url(url)
.post(formBody)
.build();
client.newCall(request).enqueue(callback);
}
}
在其他地方调用
GET
private void getHttp() {
String url = "https://pixabay.com/api/?key=14409832-7145bfafbcc12bb115e09ff42&q=yellow+flowers&image_type=photo&pretty=true";
OkHttpUtil.getOkHttp(url, new Callback() {
@Override
public void onFailure(@NotNull Call call, @NotNull IOException e) {
//错误的回调
Log.d("TAG", "错误: " + e.getMessage());
}
@Override
public void onResponse(@NotNull Call call, @NotNull Response response) throws IOException {
//成功的回调
Log.d("TAG", "结果: " + response.body().string());
}
});
}
POST
private void PostOkHttp() {
String url = "https://pixabay.com/api/?key=14409832-7145bfafbcc12bb115e09ff42&q=yellow+flowers&image_type=photo&pretty=true";
FormBody.Builder builder = new FormBody.Builder();
// builder.add("K", "V");
OkHttpUtil.PostOkHttp(url, builder, new Callback() {
@Override
public void onFailure(@NotNull Call call, @NotNull IOException e) {
//错误回调
Log.d("TAG", "错误: " + e.getMessage());
}
@Override
public void onResponse(@NotNull Call call, @NotNull Response response) throws IOException {
//成功回调
Log.d("TAG", "结果: " + response.body().string());
}
});
}
over!