RetrofitUrlManager icon indicating copy to clipboard operation
RetrofitUrlManager copied to clipboard

setGlobalDomain 参数重复

Open hanouba opened this issue 4 years ago • 2 comments

setGlobalDomain http://192.168.12.5:8055/CityInterface/ getGlobalDomain http://192.168.12.5:8055/CityInterface/

经过 HttpUrl newUrl = mUrlParser.parseUrl(httpUrl, request.url()); 处理后 多了个CityInterface

httpurl http://192.168.12.5:8055/CityInterface/ newurl http://192.168.12.5:8055/CityInterface/CityInterface/

hanouba avatar Jul 21 '21 10:07 hanouba

https://github.com/JessYanCoding/RetrofitUrlManager/blob/master/manager/src/main/java/me/jessyan/retrofiturlmanager/parser/DefaultUrlParser.java#L52

断点这里看看,用的哪个解析器,然后看看解析器为什么加了这个 /CityInterface

JessYanCoding avatar Jul 28 '21 06:07 JessYanCoding

再初始化的时候加上这句开启高级模式。 RetrofitUrlManager.getInstance().startAdvancedModel(ApiService.SERVER_URL)

  • 本框架分为三种模式, 普通模式 (默认)、高级模式 (需要手动开启)、超级模式 (需要手动开启)
  • 普通模式:
  • 普通模式只能替换域名, 比如使用 "https:www.google.com" 作为 Retrofit 的 BaseUrl 可以被替换
  • 但是以 "https:www.google.com/api" 作为 BaseUrl 还是只能替换其中的域名 "https:www.google.com"
  • 详细替换规则可以查看 {@link DomainUrlParser}
  • 高级模式:
  • 高级模式只能替换 {@link #startAdvancedModel(String)} 中传入的 BaseUrl, 但可以替换拥有多个 pathSegments 的 BaseUrl
  • 如 "https:www.google.com/api", 需要手动开启高级模式 {@link #startAdvancedModel(String)}
  • 详细替换规则可以查看 {@link AdvancedUrlParser}

ILoveYouCC avatar Aug 18 '21 05:08 ILoveYouCC