GithubLink
说个题外话:买个实物工具要钱,弄个软件工具都是免费的!给个星鼓励下嘛!
现状
Android项目如果是多服务端接口时,一般怎么弄呢?
方法1:服务器地址放在Header中
把服务器地址(或地址名,如:‘SERVER_HOST_A’)放在接口Header中,然后通过拦截器来动态修改请求地址而实现的。除了默认服务器的接口,其它都要加一个Header,有点麻烦。看起来也不爽,不简洁。
interface ApiHeaderCase {
/************************** server A ****************************/
@Headers("host:$SERVER_HOST_A")
@GET("user/loginWithScanCode")
fun aMethod1(@Query("id") id: Int): Observable
/************************** server B ****************************/
@Headers("host:$SERVER_HOST_B")
@GET("user/loginWithScanCode")
fun bMethod1(@Query("id") id: Int): Observable
}
复制代码
方法2:多套服务类,实例化为多个对象,准确查找接口归属服务</