大家好,
我正在开发基于Ionic的应用程序 - 所以AngularJS。在我对应用程序的测试中,我将设备连接到一个非常慢的wifi,以测试应用程序如何响应......这很糟糕,但也不是太糟糕,因为问题非常本地化。
起初应用程序根本不会加载。控制台中显示Channel not fired: onDOMContentLoaded
,警报显示Application Error - The connection to the server was unsuccessful. (file:///android_asset/www/index.html)
。
我按照提示进行了操作:increase loadUrlTimeoutValue
该应用程序停止崩溃。但是它会保留在白色屏幕上,直到最终index.html中唯一的http调用失败:
http://maps.googleapis.com/maps/api/js?key=myKey&libraries=places
控制台会像往常一样记录Failed to load resource: net::ERR_TIMED_OUT
和app bootstraps。第二件事,必须在应用程序库中显示的图像不会显示出来,在长时间加载后给我一堆408 (Request Time-out)
,例如
GET http://res.cloudinary.com/myimage.jpg 408 (Request Time-out)
所以我的猜测是,在这个非常慢的wifi上,所有的http调用都是一个问题 - 它们只是在一段时间后失败并返回控制台能够显示的错误。
我的简单问题:如何全局捕获这种类型的错误,以便能够向用户显示消息?或者甚至更好,听听任何http电话并在5s左右后自己超时以显示所述消息?
提前致谢!