Arrays 我有一个JSON,正在尝试使用objectMapper进行解析。但mapper给了我零分 类调用响应:响应,可映射{ 变量名称:字符串? 启用变量:Bool? 可用变量:Bool? 必需的初始化?(映射:映射){ } func映射(映射:映射){ self.name
它的字典数组尝试键入cast as[[String:Any]]Arrays 我有一个JSON,正在尝试使用objectMapper进行解析。但mapper给了我零分 类调用响应:响应,可映射{ 变量名称:字符串? 启用变量:Bool? 可用变量:Bool? 必需的初始化?(映射:映射){ } func映射(映射:映射){ self.name,arrays,swift,Arrays,Swift,它的字典数组尝试键入cast as[[String:Any]] 现在不需要外部映射器框架了,苹果提供了Codable,它很容易使用,也很容易理解解析中的错误。mapper…我甚至从来没有听说过它。@ElTomato它是。这不是完整的json,我猜你有一系列字典,所以试试as?[[String:Any]]您还需要在问题中包括响应类型。因为像SwiftyJSON和ObjectMapper这样的Swift 4第三方库已经过时,取而代之的是Codable。 { "name"
现在不需要外部映射器框架了,苹果提供了Codable,它很容易使用,也很容易理解解析中的错误。mapper…我甚至从来没有听说过它。@ElTomato它是。这不是完整的json,我猜你有一系列字典,所以试试
as?[[String:Any]]
您还需要在问题中包括响应类型
。因为像SwiftyJSON
和ObjectMapper
这样的Swift 4第三方库已经过时,取而代之的是Codable
。
{
"name": "a",
"enabled": true,
"available": false
},
{
"name": "b",
"enabled": true,
"available": false
},
{
"name": "c",
"enabled": false,
"available": true
},
{
"name": "f",
"enabled": false,
"available": false
},
{
"name": "g",
"enabled": false,
"available": false
},
{
"name": "h",
"enabled": false,
"available": false
}
class CallsResponse: Response, Mappable {
var name: String?
var enabled: Bool?
var available: Bool?
required init?(map: Map) {
}
func mapping(map: Map) {
self.name <- map["name"]
self.enabled <- map["enabled"]
self.available <- map["available"]
}
}
func parseResponse(data: Data) throws -> ResponseType? {
if let JSON = try JSONSerialization.jsonObject(with: data, options: .allowFragments) as? [String: Any] {
return Mapper<ResponseType>().map(JSON: JSON)
}
return nil
}