【发布时间】:2019-08-16 15:42:02
【问题描述】:
我的 RN 应用程序遇到了问题,想知道是否有人遇到过这个问题以及他们是如何解决的。 在 fetch 调用期间,如果用户将应用程序置于后台并返回,则 fetch 总是会出错(catch 块)。如果您对此问题还有任何疑问,请告诉我。
【问题讨论】:
-
它是否在您的 catch 块中给出特定错误?您可以提供的有关您正在做的事情、正在发生的事情以及您期望发生的事情的任何其他信息都将有助于排除正在发生的事情,或者为您找到可靠的解决方案。
-
@DougWatkins 捕获块错误返回“网络请求失败”。我希望它完成 fetch 调用和所有剩余的逻辑。这有帮助吗?
-
根据后台应用程序在移动设备上的运行方式,无法保证这一点。您将不得不处理应用程序在进入后台时暂停的情况。对于android,如果您需要执行不依赖于前台应用程序的后台网络请求,您可以考虑使用无头js:facebook.github.io/react-native/docs/headless-js-android
-
我的想法是你可以做两件事之一。 1 - 研究一个本地解决方案,即使在后台也能保持您的网络开放,这可能是简单的或复杂的,因为我还没有这样做,所以我对从哪里开始没有任何建议。 2 - 如果您在 catch 块中收到该错误,请再次尝试调用并在第二次调用失败时传播错误。
标签: react-native fetch