之前描述了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,請求網絡
原創,轉載請標明