Вам нужно добавить .data(using: .utf8)
после вашего String
, чтобы преобразовать его в Data
, потому что параметр from
будет ожидать объект Data
типа.
так ваш код будет выглядеть так:
let json = """
{
"places":[
{
"name" : "San Diego",
"latitude" : 32.71,
"longitude" : -117.16
},
{
"name" : "Los Angeles",
"latitude" : 34.05,
"longitude" : -118.24
}
]
}
""".data(using: .utf8)
Еще одна важная вещь: вы должны использовать блок do catch
, и с этим вы можете обработать ошибку, как показано ниже:
do {
let placesResponse = try JSONDecoder().decode(JSONResponse.self, from: json)
print(placesResponse.places)
} catch {
print(error)
}