package com.wintec.netframworktest;
import android.os.Bundle;
import android.util.Log;
import java.io.IOException;
import androidx.appcompat.app.AppCompatActivity;
import okhttp3.Call;
import okhttp3.Callback;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.Response;
public class OkhttpTestActivity extends AppCompatActivity {
OkHttpClient client;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Request request = new Request.Builder()
.url("https://wap.peopleapp.com/article/5933922/5852020")
.build();
client = new OkHttpClient();
// OkHttp的同步请求会阻塞当前线程,因此不能在UI线程中请求,需要开启子线程,在子线程中发送请求。
// new Thread(new Runnable() {
// @Override
// public void run() {
// try {
// Log.e("wy","okhttp同步请求返回: "+ client.newCall(request).execute().toString());
// } catch (IOException mE) {
// mE.printStackTrace();
// }
// }
// }).start();
// 异步请求
Call call=client.newCall(request);
call.enqueue(new Callback() {
@Override
public void onResponse(Call call, Response response) throws IOException {
Log.e("wy","okhttp异步请求response返回:"+response.toString());
}
@Override
public void onFailure(Call call, IOException e) {
Log.e("wy","okhttp异步请求异常:"+e);
}
});
}
}
okhttp两种请求方式(同步请求,异步请求)
最新推荐文章于 2024-08-26 17:03:45 发布