我刚刚用Okhttp做了一个简单的JSON解析程序,现在什么是Okhttp的回调响应,我们为什么使用它?
OkHttpClient okHttpClient=new OkHttpClient();
Request request=new Request.Builder().url(url).build();
okHttpClient.newCall(request).enqueue(new Callback() {
@Override
public void onFailure(Call call, IOException e) {
}
@Override
public void onResponse(Call call, Response response) throws IOException {
}
});
-
回调用于异步调用,在这种情况下,它将在onsuccess中向您返回对url(Json/Xml数据)的网络调用的结果,或者如果出现错误,将调用onfailure。
-
错误可能是连接未通过或连接超时、响应超时、资源/地址无效等。
您使用了入队,这将请求与其他请求一起放入队列中。它与dobackground相同,将其从Mainthread中删除,并允许其他操作继续
回调是必需的,这样当网站发出响应时,它就知道使用了哪个请求,并通过回调将数据传回。
https://square.github.io/okhttp/3.x/okhttp/okhttp3/Callback.html