Nuke Olaf - Log Store

[Android] 안드로이드 - OkHttp Interceptors 본문

Android

[Android] 안드로이드 - OkHttp Interceptors

NukeOlaf 2020. 4. 10. 04:27

레트로핏을 사용할 때, OkHttp Interceptor 를 같이 사용하면 편리하다고 한다.

인터셉터는 호출을 모니터링하거나, 재작성 및 재시도 할 수 있는 매커니즘.

나는 이런식으로 HeaderInterceptor 와 LoggingInterceptor 를 사용했다.

OKHttp 에 대한 공부가 더 필요할 것 같다.

val okHttpClient = OkHttpClient.Builder()
            .addInterceptor { chain: Interceptor.Chain ->
                val original = chain.request()
                chain.proceed(original.newBuilder().apply {
                    addHeader("X-Naver-Client-Id", Naver_Client_Id)
                    addHeader("X-Naver-Client-Secret", Naver_Client_Secret)
                }.build())
            }
            .addInterceptor(HttpLoggingInterceptor().apply {
                level = HttpLoggingInterceptor.Level.BODY
            }).build()

        val retrofit = Retrofit.Builder()
            .baseUrl(BASE_URL)
            .client(okHttpClient)
            .addConverterFactory(GsonConverterFactory.create())
            .build()

 

https://square.github.io/okhttp/interceptors/

 

Comments