OKHttp是一個開源的HTTP客戶端庫,用于在Android中發送和接收網絡請求。下面是一個示例,展示了如何在Android中使用OKHttp發送GET和POST請求。
首先,確保在項目的build.gradle文件中添加以下依賴項:
dependencies {
implementation 'com.squareup.okhttp3:okhttp:4.9.1'
}
發送GET請求的示例代碼如下:
OkHttpClient client = new OkHttpClient();
String url = "https://api.example.com/data";
Request request = new Request.Builder()
.url(url)
.build();
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
// 處理請求失敗的情況
}
@Override
public void onResponse(Call call, Response response) throws IOException {
// 處理請求成功的情況
String responseData = response.body().string();
// 在這里處理服務器返回的數據
}
});
發送POST請求的示例代碼如下:
OkHttpClient client = new OkHttpClient();
String url = "https://api.example.com/data";
String json = "{\"key\":\"value\"}"; // POST請求的參數,這里使用JSON格式
RequestBody requestBody = RequestBody.create(json, MediaType.parse("application/json"));
Request request = new Request.Builder()
.url(url)
.post(requestBody)
.build();
client.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
// 處理請求失敗的情況
}
@Override
public void onResponse(Call call, Response response) throws IOException {
// 處理請求成功的情況
String responseData = response.body().string();
// 在這里處理服務器返回的數據
}
});
這只是OKHttp的基本用法,你還可以使用它來添加請求頭、設置超時時間、處理文件上傳等更復雜的操作。詳細的使用方法可以參考OKHttp的官方文檔。