【发布时间】:2011-06-18 11:31:30
【问题描述】:
[[NSXMLParser alloc] initWithContentsOfURL:@"www.mysite.com/myXml.mxl"];
获取 xml,然后我使用解析器函数。
现在,如果服务器宕机了?或者响应太慢,有没有办法设置/获取服务器超时响应在NSXMLParser??
谢谢
【问题讨论】:
标签: iphone objective-c ipad timeout nsxmlparser
[[NSXMLParser alloc] initWithContentsOfURL:@"www.mysite.com/myXml.mxl"];
获取 xml,然后我使用解析器函数。
现在,如果服务器宕机了?或者响应太慢,有没有办法设置/获取服务器超时响应在NSXMLParser??
谢谢
【问题讨论】:
标签: iphone objective-c ipad timeout nsxmlparser
我建议使用ASIHTTPRequest 或NSURLConnection 之类的东西来提取您的数据。他们提供了对这类事情的更多控制。这些库支持超时等高级功能,ASI 甚至包括跟踪下载进度的能力。对于为您的应用程序提供可用性流程非常有用。
您可以从中提取一个 NSData,然后使用[[NSXML Parser alloc] initWithContentsOfData: data]; 将其传递给 NSXMLParser。
如果您还有其他问题,请发表评论:)
祝你好运,
天鹰座
【讨论】:
NSURLConnection 不允许您设置超时,但它会进行错误处理。查看我链接的文档。 ASIHTTPRequest 的好处是您可以设置自定义超时。如果请求花费的时间超过分配的时间,则会引发错误。这完全取决于你在做什么。 NSURLConnection 很方便,但没有那么强大。 ASI 的设置有点像噩梦,但提供了高精度控制。