【发布时间】:2017-04-06 07:56:13
【问题描述】:
我正在与Alamofire 和SwiftyJSON 合作。我想为常见情况建立通用请求和解析模型。首先,我制定了一个名为JSONConvertible 的协议。
protocol JSONConvertible {
init?(json: JSON)
}
其次,我在Alamofire 中扩展Request 类。
extension Request {
func getResult(format: [String: AnyClass]) {
self.responseJSON { (response) in
guard let statusCode = response.response?.statusCode else {
return
}
switch statusCode {
case 200:
var result = [String: AnyObject]()
let json = JSON(rawValue: response.result.value!)!
for (key, className) in format {
if className.self is JSONConvertible {
let value = className.self(json: json[key]) // get error in this line
}
}
case 201..<400:
break
case 400...Int.max:
break
default:
break
}
}
}
}
但是我从编译器中得到一个错误。因为 AnyObject 只是协议,它没有这个初始化程序。我不想只得到字典或数组。我想获得具体类的实例。请帮我。非常感谢!
【问题讨论】:
标签: ios swift alamofire swifty-json