Commit 8545d40d authored by yinjiacheng's avatar yinjiacheng

fix 用户反馈接口cookie覆盖商户后台接口cookie

parent 3552467e
......@@ -5,18 +5,27 @@ import com.yidian.common.HawkConfig
import okhttp3.Interceptor
import okhttp3.Response
class ApiSaveCookiesInterceptor: Interceptor {
override fun intercept(chain: Interceptor.Chain): Response {
val originalResponse = chain.proceed(chain.request())
class ApiSaveCookiesInterceptor : Interceptor {
val cookieList = originalResponse.headers("Set-Cookie")
if (cookieList.isNotEmpty()) {
for (cookie in cookieList) {
if(cookie.contains("JSESSIONID")){
Hawk.put(HawkConfig.Cookie, cookie)
}
}
companion object {
// 忽略cookie的host集合
val cookieInterceptWhiteList = arrayListOf(CommonService.DOMAIN_YD_JIRA)
}
override fun intercept(chain: Interceptor.Chain): Response {
val originalResponse = chain.proceed(chain.request())
// 如果当前请求host在白名单内则不进行cookie拦截
if (cookieInterceptWhiteList.contains(chain.request().url.host)) {
return originalResponse
}
val cookieList = originalResponse.headers("Set-Cookie")
if (cookieList.isNotEmpty()) {
for (cookie in cookieList) {
if (cookie.contains("JSESSIONID")) {
Hawk.put(HawkConfig.Cookie, cookie)
}
return originalResponse
}
}
}
\ No newline at end of file
return originalResponse
}
}
......@@ -24,9 +24,9 @@ object CommonDataSource {
// Tower-Api 域名
private val domainTowerApi by lazy {
if (BuildConfig.TOWER_API_ENV == AppConfig.TowerApiEnvTest) {
CommonService.DOMAIN_TOWER_API_TEST
CommonService.SCHEME_HTTP + CommonService.DOMAIN_TOWER_API_TEST
} else {
CommonService.DOMAIN_TOWER_API_PRO
CommonService.SCHEME_HTTPS + CommonService.DOMAIN_TOWER_API_PRO
}
}
......@@ -35,7 +35,7 @@ object CommonDataSource {
}
private val ydJiraApi by lazy {
ServiceFactory.getInstance().createService(CommonService::class.java, CommonService.DOMAIN_YD_JIRA)
ServiceFactory.getInstance().createService(CommonService::class.java, CommonService.SCHEME_HTTP + CommonService.DOMAIN_YD_JIRA)
}
// 301 获取金山云token接口
......
......@@ -14,12 +14,15 @@ import retrofit2.http.*
interface CommonService {
companion object {
const val SCHEME_HTTP = "http://"
const val SCHEME_HTTPS = "https://"
// Tower Api域名定义
const val DOMAIN_TOWER_API_TEST = "http://open-tower-api.test.int.yidian-inc.com:8222"
const val DOMAIN_TOWER_API_PRO = "https://open-tower-api.go2yd.com"
const val DOMAIN_TOWER_API_TEST = "open-tower-api.test.int.yidian-inc.com:8222"
const val DOMAIN_TOWER_API_PRO = "open-tower-api.go2yd.com"
// 一点jira域名定义
const val DOMAIN_YD_JIRA = "http://ydjira.yidian-inc.com"
const val DOMAIN_YD_JIRA = "ydjira.yidian-inc.com"
// tower-api 获取配置数据
private const val getCommonConfig = "/api/resource"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment