【发布时间】:2020-11-08 18:55:15
【问题描述】:
我正在使用 Swift 5、Alamofire 和 SwiftyJSON,但我还不知道如何实现它。
我的主要 API url 是 https://pokeapi.co/api/v2/pokemon?limit=151 并包含一个“结果”元素,该元素具有一个对象数组。这些对象是口袋妖怪,有名字和网址。
每个 pokemon 对象的 url 元素通向另一个端点,其中包含有关每个 pokemon 的更多信息。
这些端点是这样的:https://pokeapi.co/api/v2/pokemon/1/
每个口袋妖怪都有一个“能力”元素,它是一个由两个能力对象组成的数组。我需要这些数据,但不知道如何获得它。
编辑:这就是我的结构的样子
struct Pokemons: Codable {
let results: [Pokes]?
}
struct Pokes: Codable {
let name: String?
let url: String?
}
struct PokePage: Codable {
let abilities: [Ability]?
let id: Int?
init(abilities: [Ability], id: Int, name: String) {
self.abilities = abilities
self.id = id
}
}
struct Ability: Codable {
let name: String?
let url: String?
init(name: String, url: String) {
self.name = name
self.url = url
}
}
【问题讨论】:
-
如果您发布您的 JSON(以格式良好的方式),人们会很乐意为您提供适合您请求的对象结构。如今,没有人应该关注随机生成的 URL,而且大多数知识渊博的人都会避免这样做。
标签: swift parsing alamofire swift5 pokeapi