重要的三行代码
ServiceMethod<Object, Object> serviceMethod = (ServiceMethod<Object, Object>) loadServiceMethod(method);
OkHttpCall<Object> okHttpCall = new OkHttpCall<>(serviceMethod, args);
return serviceMethod.adapt(okHttpCall);
【 retrofit同步请求 — OkHttpCall.execute( ) 】
ParameterHandler(第1步):还是要对我们的网络请求接口方法中的每个参数,利用我们的ParameterHandler来进行解析。
ServiceMethod(第2步):根据我们创建好的ServiceMethod对象,利用创建一个OKHTTP请求所需要的request对象。ServiceMethod很重要,它包含了我们所有的网络请求需要的参数,所以我们通过它可以创建Request对象。同时,需要注意的ServiceMethod进行了缓存的,为了使我们获取它的时候更高效。
Okhttp发送网络请求(第3步):获取request交给我们的OKHTTP Call来进行实际的网络请求发送。
converter(第4步):发送之后,需要接收服务端给我们返回的数据,然后利用数据转换器converter将网络响应转换成java对象。
【 retrofit 异步请求 — OkHttpCall.enqueue( ) 】