【问题标题】:How to set alternate URL in retrofit android?如何在改造 android 中设置备用 URL?
【发布时间】:2020-08-21 01:54:40
【问题描述】:

我已经实现了 node js rest API。在 Retrofit 的帮助下,在我的 android 应用程序中使用它。现在。如果我的应用程序正在生产中,那么我的主服务器会以某种方式崩溃。所以,在这种情况下,我有一个备份服务器,它的工作方式与主服务器相同。

那么,如何在改造 android 中设置备用基本 URL?因此,如果主 URL 不起作用,则从该备用 URL 调用所有 API。是否有任何构建功能?

或者非常欢迎提出建议,任何其他替代方法来实现这一点。

【问题讨论】:

  • 你试过onError()还是onFail()?
  • 有内置功能吗?
  • 对不起,我不明白你的问题。
  • Retrofit 是否提供功能来实现这一点?因为我可以在调用 API 时手动设置帮助错误类型。但是,如果改造可以提供,那么它对我来说将是更棒的代码。
  • 你只是重复了自己。不知道。

标签: android retrofit retrofit2


【解决方案1】:

我还有一个建议给你。

NodeJS 服务器不应无缘无故停止。大多数情况下,这是因为 500 错误没有被捕获并停止服务器。所以,首先,请确保每个可能导致错误的 js 命令都在 try/catch 块中。

那么,我建议使用 PM2 包

这是在生产服务器上运行的最佳选择。

它有几个优点:

  • 易于设置和运行。
  • 如果您的应用程序崩溃,PM2 会自动重启。
  • PM2 将记录未处理的异常 - 在这种情况下,在 文件位于 /home/safeuser/.pm2/logs/app-err.log。
  • 通过一个命令,PM2 可以确保它管理的任何应用程序 服务器重新启动时重新启动。基本上意味着你的节点 应用程序将作为服务启动。

参考:https://pm2.keymetrics.io/docs/usage/quick-start/

【讨论】:

  • 目前,我正在使用 pm2 进行生产,它在谷歌计算引擎 VM 上运行。但是,不知何故,计算引擎将无法工作,然后 pm2 将在规定的时间内停止。在规定的时间内,我想使用另一个已经与主 VM 相同运行的 VM。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-12-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-05
  • 1970-01-01
相关资源
最近更新 更多