微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ios – 使用Swift的Alamofire处理XML数据

我开始用我目前的ios项目来使用可可包.我需要使用SOAP来轻松获取ios项目的内容.我已经google了,Alamofire荚对我来说很棒.因为我使用 Swift编程语言.

我已经很容易地找到了这个pod.但是我的Web服务返回给我的XML结果.而且我想序列化来排列这个XML结果.但我不能.

当我用浏览器打电话给我的Web服务时,我得到这样的结果

Alamofire响应方法是这样的:

Alamofire.request(.GET,"http://my-web-service-domain.com",parameters: nil)
         .response { (request,response,data,error) in
                     println(request)
                     println(response)
                     println(error)
                   }

当我运行这个方法,我看到终端上的这个输出

<NSMutableuRLRequest: 0x170010a30> { URL: http://my-web-service-domain.com }
Optional(<NSHTTPURLResponse: 0x1704276c0> { URL: http://my-web-service-domain.com } { status code: 200,headers {
    "Cache-Control" = "private,max-age=0";
    "Content-Length" = 1020;
    "Content-Type" = "text/xml; charset=utf-8";
    Date = "Thu,18 Jun 2015 10:57:07 GMT";
    Server = "Microsoft-IIS/7.5";
    "X-AspNet-Version" = "2.0.50727";
    "X-Powered-By" = "ASP.NET";
} })
nil

我想得到一个数组,在浏览器上看到我的故事板.
有人可以帮助我如何使用Alamofire框架或Swift语言来序列化这些数据?

解决方法

如果我没有误解你的描述,我想你想得到XML数据并解析,对吧?关于这一点,您可以在响应回调中处理错误的变量.您应该打印(数据)来检查XML文档.

对于解析XML数据,您可以考虑使用SWXMLHash.Alamofire请求可能如下所示:

Alamofire.request(.GET,error) in
            println(data) // if you want to check XML data in debug window.
            var xml = SWXMLHash.parse(data!)
            println(xml["UserDTO"]["FilmID"].element?.text) // output the FilmID element.
         }

有关XML管理的更多信息,请查看SWXMLHash.

原文地址:https://www.jb51.cc/iOS/335003.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐