允许UIWebView在没有Internet连接的情况下加载http:// localhost:port / path URI

时间:2010-07-09 01:44:36

标签: iphone uiwebview

我正在开发一个iPad应用程序,它在高端口上监听嵌入式HTTP服务器,我使用UIWebView从此HTTP服务器加载页面。

对于应用程序的功能,当没有可用的网络连接时,这很有用。

UIWebView正在加载http://localhost:port/path

形式的网址

当我在iPad上禁用Wi-Fi并运行应用程序时,UIWebView的委托会收到带有以下NSError对象的webView:didFailLoadWithError:消息:

Error Domain=NSURLErrorDomain Code=-1009 UserInfo=0x1b4a50 "no Internet connection"

显然,SDK很聪明并且检测到它没有Internet连接,但是应该可以在没有Internet连接的情况下访问127.0.0.1/localhost/::1。我将向Apple报告该错误,但在此期间我要求就此SDK错误的可能解决方法提出建议。

请注意:更改应用程序的体系结构不在此问题的范围内。

1 个答案:

答案 0 :(得分:7)

您可能需要调查定义自己的方案并使用NSURLProtocol实现它,而不是运行HTTP服务器。这将允许您在不必实施HTTP协议的情况下处理URL的加载,并且如果您没有网络连接,将解决早期HTTP协议失败的SDK的问题。