Retrofit 創(chuàng)建

不錯(cuò)的rxjava+retrofit文章
Retrofit + OkHttp3 自定義全局Header和Cookie管理
RxJava 與 Retrofit 結(jié)合的最佳實(shí)踐
RxJava+Retrofit
扔物線

(1)module里build.gradle需要引用:

compile 'io.reactivex:rxandroid:1.1.0'
compile 'io.reactivex:rxjava:1.1.2'
compile 'com.squareup.retrofit2:retrofit:2.0.1'
compile 'com.squareup.retrofit2:converter-gson:2.0.1'
compile 'com.squareup.retrofit2:adapter-rxjava:2.0.1'
compile 'com.squareup.okhttp3:logging-interceptor:3.0.0-RC1'

log攔截器

HttpLoggingInterceptor logging = new HttpLoggingInterceptor();
logging.setLevel(HttpLoggingInterceptor.Level.HEADERS).setLevel(HttpLoggingInterceptor.Level.BODY);

** header 攔截器**

   Interceptor headerInterceptor = new Interceptor() 
{
           @Override
      
  public Response intercept(Chain chain) throws IOException {
  
                     Request original = chain.request();

           
  Request request = original.newBuilder()
  
                .addHeader("**", "**")
     
                .addHeader("**", "**")

                .method(original.method(), original.body())
                    .build();

            
return chain.proceed(request);
   
     }
    };
public interface UserInterface {  
  @GET("top250") 
   Observable<HttpResult<List<Subject>>> getTopMovie(@Query("start") int start, @Query("count") int count);}
Retrofit retrofit = new Retrofit.Builder()        
.baseUrl("https://baidu.com/")        
.addConverterFactory(GsonConverterFactory.create(gson))        
.addCallAdapterFactory(RxJavaCallAdapterFactory.create())        
.client(okHttpClient())    
.build();
UserInterface uesrinterface = retrofit.create(UserInterface.class);

** NetworkInterceptor Interceptor 講解**
如果你沒有使用緩存,用哪種都一樣。 NetworkInterceptor是針對(duì)需要真實(shí)請(qǐng)求網(wǎng)絡(luò)的請(qǐng)求的攔截器 Interceptor則會(huì)攔截所有請(qǐng)求,包括讀取緩存的請(qǐng)求

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢(shì)1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 179,176評(píng)論 25 708
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,644評(píng)論 19 139
  • 又是一年中秋佳節(jié),祝各位中秋節(jié)快樂(lè)。 今天我們來(lái)聊聊這個(gè)最近很火的網(wǎng)絡(luò)請(qǐng)求庫(kù)retrofit,在此基礎(chǔ)上會(huì)延伸出一...
    涅槃1992閱讀 7,946評(píng)論 13 133
  • 本博客為作者原創(chuàng),如需轉(zhuǎn)載請(qǐng)注明原博客出處:WONDER'TWO 0X00 寫在前面 相信做過(guò)And...
    一只酸奶牛哇閱讀 4,499評(píng)論 9 34
  • 東西壞了,人們首先想到的是如何去換掉它,而不是如何去修好它。 山光忽西落,池月漸東上。散發(fā)乘夜涼,開軒臥閑敞。荷風(fēng)...
    滿船清夢(mèng)壓星河ya_閱讀 229評(píng)論 0 0

友情鏈接更多精彩內(nèi)容