Closed easyhooon closed 1 year ago
private const val MaxTimeoutMillis = 3000L private val json = Json { encodeDefaults = true ignoreUnknownKeys = true prettyPrint = true isLenient = true } private val jsonRule = Json { json } @Module @InstallIn(SingletonComponent::class) internal object NetworkModule { @Singleton @Provides fun provideRetrofitHttpClient(dataStoreProvider: DataStoreProvider): Retrofit { val contentType = "application/json".toMediaType() val httpClient = OkHttpClient.Builder() .connectTimeout(MaxTimeoutMillis, TimeUnit.MILLISECONDS) .addInterceptor { chain: Interceptor.Chain -> val request = chain.request().newBuilder() .addHeader("Content-Type", "application/json") .addHeader("X-GUEST-KEY", runBlocking { dataStoreProvider.getGuestLoginToken() }) .build() chain.proceed(request) } .addInterceptor( HttpLoggingInterceptor { message -> Timber.tag("HttpClient").d(message) }.setLevel(HttpLoggingInterceptor.Level.BODY), ) .build() return Retrofit.Builder() .baseUrl(BuildConfig.SERVER_BASE_URL) .client(httpClient) .addConverterFactory(jsonRule.asConverterFactory(contentType)) .build() } }
다음과 같이 setLevel(HttpLoggingInterceptor.Level.BODY), 로 설정을 하였으나 request, response 의 body가 로그캣에 출력되지 않고 , request의 endpoint 와 response 의 httpCode 만 출력되는 문제
setLevel(HttpLoggingInterceptor.Level.BODY),
다음과 같이
setLevel(HttpLoggingInterceptor.Level.BODY),
로 설정을 하였으나 request, response 의 body가 로그캣에 출력되지 않고 , request의 endpoint 와 response 의 httpCode 만 출력되는 문제