ios – 以Swatch解析XML文件,无需等待Swift的完整下载

ios – 以Swatch解析XML文件,无需等待Swift的完整下载,第1张

概述在iOS中,我想在下载时从服务器解析 XML流.它不应该等到服务器完成构建XML并且下载完成.服务器以“chunks”形式构建XML,并将其直接发送到客户端.在我的应用程序中,我有一个UITableView,一旦我从服务器接收到它,应立即显示XML的元素. 我已经尝试使用XMLParser(contentsOf:URL)构造函数,但是这首先下载整个XML,然后解析它.还有另一个构造函数XMLPar 在iOS中,我想在下载时从服务器解析 XML流.它不应该等到服务器完成构建XML并且下载完成.服务器以“chunks”形式构建XML,并将其直接发送到客户端.在我的应用程序中,我有一个UItableVIEw,一旦我从服务器接收到它,应立即显示XML的元素.

我已经尝试使用XMLParser(contentsOf:URL)构造函数,但是这首先下载整个XML,然后解析它.还有另一个构造函数XMLParser(stream:inputStream),但是我不知道如何从URLConnection获取一个inputStream.我发现的唯一的事情是this question这是将近5岁,我不明白如何在Swift 3中做到这一点,如果它甚至起作用.

我尝试的另一件事是通过libxml2,但是我有RAM使用或其他事情的问题(见我的old question).

如何解析XML流,而不必等待Swift的完整下载?

在AndroID中,我将使用XMLPullParser并具有:

URL url = new URL(urlString);httpURLConnection connection = (httpURLConnection) url.openConnection();connection.setRequestMethod("GET");connection.setDoinput(true);inputStream inputStream = connection.getinputStream();XmlPullParserFactory xmlFactoryObject = XmlPullParserFactory.newInstance();XmlPullParser pullParser = xmlFactoryObject.newPullParser();pullParser.setinput(inputStream,null);// here comes the actual parsing
解决方法 也许客户端/服务器有一些Session-cookies有问题吗?尝试在每个请求后删除它们:
// Loops through each of the cookies and deletes them.let cookieStore = httpcookiestorage.sharedfor cookie in cookieStore.cookies ?? [] {    cookieStore.deletecookie(cookie)}
总结

以上是内存溢出为你收集整理的ios – 以Swatch解析XML文件,无需等待Swift的完整下载全部内容,希望文章能够帮你解决ios – 以Swatch解析XML文件,无需等待Swift的完整下载所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1110134.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存