代码之家  ›  专栏  ›  技术社区  ›  w00ly

基于干净体系结构中发现的动态更新baseurl

  •  0
  • w00ly  · 技术社区  · 6 年前

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

    一切都是为了最好,但我的一个新功能是使我的更新请求的base url动态化,这个baseurl来自于网络上的一个发现。 一旦发现完成,所选的源服务器URL将被存储并应使用,直到用户请求新的发现为止。

    我已经看到可以用不同的方式使baseurl动态化(使用okhttp或@url参数),但是我应该如何“干净地”将其一次性传递给我的远程类呢?它是应该存储在那里一次,还是应该在每个请求中传递? 我应该组合用例,首先获取我的baseurl,然后为每个请求将其传递到存储库(uck-uck)吗?

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

    1 回复  |  直到 6 年前
        1
  •  0
  •   Pasha Shkaran    6 年前

    你可以看看 this 图书馆。它允许您在动态更新中直接更改URL。 RetrofitUrlManager.getInstance().setGlobalDomain("your BaseUrl");