모든 API 요청에 Accept-Language 헤더 추가

This commit is contained in:
2025-12-12 17:43:44 +09:00
parent a75a11c9f6
commit e9df2bfa03
2 changed files with 22 additions and 0 deletions

View File

@@ -142,6 +142,7 @@ import kr.co.vividnext.sodalive.mypage.service_center.FaqApi
import kr.co.vividnext.sodalive.mypage.service_center.FaqRepository
import kr.co.vividnext.sodalive.mypage.service_center.ServiceCenterViewModel
import kr.co.vividnext.sodalive.network.TokenAuthenticator
import kr.co.vividnext.sodalive.network.AcceptLanguageInterceptor
import kr.co.vividnext.sodalive.report.ReportApi
import kr.co.vividnext.sodalive.report.ReportRepository
import kr.co.vividnext.sodalive.search.SearchApi
@@ -202,6 +203,7 @@ class AppDI(private val context: Context, isDebugMode: Boolean) {
OkHttpClient().newBuilder()
.addInterceptor(logging)
.addInterceptor(get<AcceptLanguageInterceptor>())
.authenticator(TokenAuthenticator(get()))
.connectTimeout(60, TimeUnit.SECONDS)
.readTimeout(60, TimeUnit.SECONDS)
@@ -209,6 +211,8 @@ class AppDI(private val context: Context, isDebugMode: Boolean) {
.build()
}
single { AcceptLanguageInterceptor(get()) }
single {
Retrofit.Builder()
.baseUrl(baseUrl)

View File

@@ -0,0 +1,18 @@
package kr.co.vividnext.sodalive.network
import android.content.Context
import kr.co.vividnext.sodalive.settings.language.LanguageManager
import okhttp3.Interceptor
import okhttp3.Response
class AcceptLanguageInterceptor(
private val context: Context
) : Interceptor {
override fun intercept(chain: Interceptor.Chain): Response {
val currentLang = LanguageManager.getEffectiveLanguage(context)
val newRequest = chain.request().newBuilder()
.header("Accept-Language", currentLang)
.build()
return chain.proceed(newRequest)
}
}