- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我想知道如何在 Alamofire 中解析并从 API 获取所有数据。
这是从 API 下载一个数据字典的代码。我如何从中下载其他东西?
这是来自 JSONFormatter 的屏幕截图:
func downloadJsonData (completed: @escaping DownloadCompleted) {
Alamofire.request(url, method: .get).responseJSON { response in
let result = response.result.value
if let dict = result as? [Dictionary<String,AnyObject>] {
if let id = dict[0]["id"] as? String {
self._id = id
print("@@@\(self._id)")
}
if let name = dict[0]["name"] as? String {
self._name = name
print("@@@\(self._name)")
}
if let avatar = dict[0]["avatar"] as? String {
self._avatar = avatar
print("@@@\(self._avatar)")
}
if let lat = dict[0]["lat"] as? Float {
self._lat = lat
print("@@@\(self._lat)")
}
if let lng = dict[0]["lng"] as? Float {
self._lng = lng
print("@@@\(self._lng)")
}
}
}
completed()
}
最佳答案
func downloadJsonData (completed: @escaping DownloadCompleted) {
Alamofire.request(url, method: .get).responseJSON { response in
if let collectionData = response.result.value as? [[String:AnyObject]] {
let collection : [YourStruct] = collectionData.flatMap { data in
guard let id = data["id"] as? String,
let name = data["name"] as? String,
let avatar = data["avatar"] as? String,
let lat = data["lat"] as? Float,
let lng = data["lng"] as? Float
else {
return nil
}
return YourStruct(id:id, name:name, avatar:avatar, lat:lat, lng:lng)
}
}
}
completed()
}
现在您有了对象的集合。有了它你可以做你想做的事
关于swift - 使用 Alamofire 4.0 和 Swfit 3 解析字典数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42284306/
这是一个 AnyHashable 不支持枚举转换的简单案例。 enum testEnum: String { case Test } let myObject: AnyHashable = t
如何将此代码迁移到 Swift 3? let keyBytes = keyData.bytes.bindMemory(to: Void.self, capacity: keyData.count) 我
我有一个 SKScene,它使自己成为名为“showPhotoForMoodNotification”的通知的观察者,并带有一个名为“eventListenerDidReceiveNotificati
当运行 docker build 构建 swift 镜像时,tzdata 将停止该过程。提示选择位置,但输入号码后没有反应。 Configuring tzdata ------------------
我有一个简单的 ios 应用程序,它使用 WebView 显示网站。该网站可以选择使用 Facebook 登录。如果我使用网络浏览器导航该网站并使用 FB 登录,它工作正常,但是,当我使用 webvi
我想使用FSInteractiveMap swift 但文档只是 Objective-C,我无法快速翻译点击处理程序。 NSDictionary* data = @{ @"asia" : @1
我想知道如何在 Alamofire 中解析并从 API 获取所有数据。 这是从 API 下载一个数据字典的代码。我如何从中下载其他东西? 这是来自 JSONFormatter 的屏幕截图: http:
升级到xCode6.1后,我无法编译上次正常的项目。我从未更改过此文件中的任何内容。请帮助我!!! AppDelegate.swift:75:29: errorWithDomain(_:code:us
感谢阅读我! 我在 Debian 8 上使用 Duplicity 每天备份我的 OVH 公共(public)云项目和 OVH Swift/Openstack 公共(public)云存储上的其他项目。一
我是一名优秀的程序员,十分优秀!