Получаю json вот такого формата
["data: [{"ID»:1111,»Name»:»Test111»},{«ID»:22222,»Name»:»Test222»}]]
struct Test: Decodable {
var d: [TestData]
}
struct TestData: Decodable {
var ID: Int
var Name: String
}
let dictionary = try JSONDecoder().decode([Test].self, from: data)
Если перед первым и последним знаком [ поставить {, то есть
[{data: [{"ID»:1111,»Name»:»Test111»},{«ID»:22222,»Name»:»Test222»}]}]
То все работает Увы, изменить не могу нужно как-то это разбирать
Попробовал делать так
let dictionary = try JSONSerialization.jsonObject(with: data, options: .allowFragments) as! [String:AnyObject]
var targetDict: String = “”
for (_, value) in dictionary {
targetDict = value as! String
}
let dataJson = targetDict.data(using: String.Encoding.utf8)
let json = try JSONDecoder().decode([TestData].self, from: dataJson!)
print(json)
Получаю в таком формате, что переменные вытащить не могу
[report.ViewController.(unknown context at $102cf7e20).(unknown context at $102cf7e8c).TestData(ID: 1111, Name: "test111»)]
Есть шансы как-то декодировать или оставить строкой и разбирать уже просто строку