屏幕锁定后,XHR 请求在 cordova-ios 中被取消

问题描述 投票:0回答:1

在我们的 cordova ios 应用程序中,有一种情况,用户可以使用 xhr 请求保存表单。

在正常情况下,当启动保存请求后 Iphone 屏幕未锁定时 - 一切正常。

但是当屏幕在开始保存请求后立即锁定时 - 请求失败并出现错误 - 无法加载资源:网络连接丢失。

我对这个问题做了一些研究,发现无法加载资源:网络连接丢失了Safari 据说 WKWebView 已被“优化”为在屏幕锁定时不进行网络连接 据我了解,cordova-ios 正在使用 WKWebView,因此它可能会继承此限制。

  1. 您能否澄清一下,当 iOS 设备的 cordova 屏幕锁定时,这是否是取消 xhr 请求的预期行为?

  2. 是否有任何解决方法来处理此问题 - 我的意思是,用户启动保存请求,锁定屏幕,然后请求成功完成? 我还尝试使用高级http插件https://github.com/silkimen/cordova-plugin-advanced-http#readme - 请求不会立即取消,但是当后台花费的时间超过超时时 - 请求被取消通过超时。

仅在 IOS 平台上观察到该问题。

cordova ios 版本 6.3.0

感谢您的帮助。

ios cordova background xmlhttprequest cordova-ios
1个回答
0
投票

1- 是

2-您可以尝试使用后台任务来保存数据。查看 https://github.com/katzer/cordova-plugin-background-mode

© www.soinside.com 2019 - 2024. All rights reserved.