【问题标题】:Dynamic Retrofit baseurl from discovery in Clean Architecture来自 Clean Architecture 中发现的动态改造 baseurl
【发布时间】:2018-09-12 13:15:48
【问题描述】:

我有一个项目遵循清洁架构设计原则,并提出改造请求(在我的远程数据层中,由在本地和远程数据源之间切换的存储库层调用)。

一切都是最好的,但我的新功能之一是使我的 Retrofit 请求的 baseUrl 动态化,基本 url 来自网络上的发现。 发现完成后,选择的源服务器 url 将被存储,并且应该在用户请求新发现之前一直使用。

我已经看到我可以通过不同的方式(使用 OkHttp 或 @Url 参数)使 baseUrl 动态化,但是我应该如何“干净地”将它一劳永逸地传递给我的远程类?它甚至应该存储一次,还是应该在每个请求中传递(uck)? 我应该结合 Usecases 来首先获取我的 baseurl,然后将它传递给每个请求的存储库(uck uck)吗?

我也在使用 Dagger2,我的项目大致基于这个样板:https://github.com/bufferapp/android-clean-architecture-boilerplate

【问题讨论】:

    标签: android retrofit2 dagger-2 clean-architecture


    【解决方案1】:

    您可以查看this 库。它允许您直接在 Retrofit 中动态更改 url。 RetrofitUrlManager.getInstance().setGlobalDomain("your BaseUrl");

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-06-15
      • 1970-01-01
      • 2016-12-12
      • 2022-11-26
      • 2018-12-09
      • 1970-01-01
      • 2018-08-10
      • 2018-01-03
      相关资源
      最近更新 更多