ios - XML解析中URL没有响应-Alamofire Swift 5

标签 ios swift xml alamofire xmlmapper

我将XMLMapperAlamoFire请求一起使用以获取响应。 URL在浏览器上运行良好,但是当我尝试快速使用时,它将跳过该功能。即使我无法调试响应。它在解析之前,不会从URL获取任何数据或响应。任何的想法 ??

func xmlParser() {
        let urlXml = "https://images.apple.com/main/rss/hotnews/hotnews.rss"

        Alamofire.request(urlXml, method: .get).responseXMLObject { (response: DataResponse<RSSFeed>) in
            let rssFeed = response.result.value
            print(rssFeed?.channel?.items?.first?.title ?? "nil")
        }
    }

最佳答案

您的模型似乎有问题。我设法映射了此链接的响应。

尝试使用以下结构,并将其与您的结构进行比较以查看差异:

class RSSFeed: XMLMappable {
    var nodeName: String!

    var channel: Channel?

    required init?(map: XMLMap) {}

    func mapping(map: XMLMap) {
        channel <- map["channel"]
    }
}

class Channel: XMLMappable {
    var nodeName: String!

    var title: String?
    var link: URL?
    var description: String?
    var language: String?
    var copyright: String?
    var pubDate: String?
    var lastBuildDate: String?
    var category: String?
    var generator: String?
    var docs: URL?
    var items: [Item]?

    required init?(map: XMLMap) {}

    func mapping(map: XMLMap) {
        title <- map["title"]
        link <- (map["link"], XMLURLTransform())
        description <- map["description"]
        language <- map["language"]
        copyright <- map["copyright"]
        pubDate <- map["pubDate"]
        lastBuildDate <- map["lastBuildDate"]
        category <- map["category"]
        generator <- map["generator"]
        docs <- (map["docs"], XMLURLTransform())
        items <- map["item"]
    }
}

class Item: XMLMappable {
    var nodeName: String!

    var title: String?
    var link: URL?
    var description: String?
    var pubDate: String?

    required init?(map: XMLMap) {}

    func mapping(map: XMLMap) {
        title <- map["title"]
        link <- (map["link"], XMLURLTransform())
        description <- map["description"]
        pubDate <- map["pubDate"]
    }
}

希望这可以帮助。

关于ios - XML解析中URL没有响应-Alamofire Swift 5,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58285133/

相关文章:

iphone - 所有 View 中的 ui 导航栏

ios - 如何转换Class类型?

java - 了解Spring框架的执行流程——在XML文件中添加断点?

xml - XSLT - 如何以正确的方式插入当前日期时间

xml - 解析 xmlToList 中的 CDATA 字段

ios - 将数据从 UIPickerView 传递回其委托(delegate)

ios - 否定#available语句

ios - ASP.NET 检索 iOS 应用程序到期日期

swift - 由于总线错误 : 10,Xcode 无法构建项目

ios - 为自定义 View 调用 NSBundle(使用 loadNibName)后访问 IBOutlet 的最佳方法