美文网首页
retrofit源码解析(三)

retrofit源码解析(三)

作者: 苍龙阁阁主 | 来源:发表于2017-10-12 14:04 被阅读0次

    之前描述了retrofit的实例

    retrofit源码解析(一)实例化

    以及retrofit的网络请求

    retrofit源码解析(二)网络请求

    那retrofit是如何通过注解获取到请求参数的呢?

    我们回到ServiceMethod类build()方法中,在build()方法中,会根据method的注解,去解析请求参数

    解析注解

    在这里我们看到,根据不同的注解,会解析不同的内容,例如 get,post,put 等方法,以及header等头文件,这里说一下okhttp 的缓存策略,okhttp是使用的是http的缓存策略,通过header中的Cache-Control来判断是否要进行缓存,以及缓存时间,而parseMethodAnnotation()解析出来的结果,会放到ServiceMethod的参数中保存,在请求网络的时候,我们看到在OkHttpCall中,调用了ServiceMethod的toRequest()方法

    serviceMethod toRequest

    在这个方法中,将解析出来的参数放到了Request中,并通过OkHttpCall的createRawCall传递给了OKHTTP,请求网络

    retrofit 封装 git

    原创,转载请标明

    相关文章

      网友评论

          本文标题:retrofit源码解析(三)

          本文链接:https://www.haomeiwen.com/subject/srinyxtx.html