[英]NSOperation, Synchronous NSURLConnection, & UIWebView on iPhone
我有一个奇怪的问题。 这是设置:
如果启动我的应用程序并运行一些后台联网操作,则将URL加载到UIWebView中会导致以下错误:
错误域= WebKitErrorDomain代码= 102 UserInfo = 0x1996d60“帧加载中断”
并且任何随后尝试加载UIWebView的尝试都会失败,并显示相同的错误。
我需要注意UIWebView和NSURLConnection之间是否存在一些奇怪的交互? 我的下一步是用完全异步的NSOperation替换同步调用,但这是一个怪异的错误,我以为我会问专家。
我已将错误隔离到NSURLConnection sendSynchronousRequest方法。 如果我从NSOperation调用此方法,则UIWebView会严重中断。
102错误与WebKit中的某些“策略更改”错误有关,该错误在任何地方都很少/没有记录。
有人知道吗 任何帮助是极大的赞赏!
编辑:看起来这是某种cookie问题。 如果Web服务器通过后台HTTP请求设置Cookie,为什么UIWebView无法加载的任何原因?
好,我知道了。
显然,UIWebView不喜欢使用全局cookie存储的URLConnection HTTPRequests(甚至ASIHTTPRequest)。 因此,现在我的应用程序抛出一个简单的HTML页面,以允许由UIWebView设置cookie,并且从此“下游”的每个人显然都很高兴,无论是通过NSOperation的API请求还是UIWebViews。
万岁!
我不清楚您要在这里完成什么,UIWebView将自行异步加载NSRequest。 要检查的一件事是通过使用NSOperation内部的performSelectorOnMainThread:
方法之一,确保与UIWebView在代码中进行的任何交互都在主线程上。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.