Swift 3 json parsing
Estou com problemas para atualizar meu aplicativo, pois o Alamofire e o SwiftyJSON ainda não oferecem suporte ao Swift 3. Eu tenho um URL que me retornará o json da seguinte maneira:
{
"products": [
{
"body_html":"",
"created_at":"2016-03-02T13:56:18+03:00",
"id":489759251,
"handle":"product",
"options":[
{
"id":627488838,
"product_id":489759251,
"name":"Title",
"position":1,
"values":[
"Default Title"
]
}
],
},
{
"body_html":"",
"created_at":"2016-03-08T05:17:55+03:00",
"id":530420915,
"handle":"product-2",
"options":[
{
"id":6319359750,
"product_id":530420915,
"name":"Title",
"position":1,
"values":[
"Default Title"
]
}
],
},
]
}
Eu preciso ser capaz de analisar esse json e listar todos os produtos retornados e ser capaz de ler qualquer atributo e subopção específicos de cada um.
Eu verifiquei algumas outras perguntas aqui e encontrei várias soluções, consegui obter os dados do json e imprimi-los como acima. Mas não consegui analisar.
let shopUrl = "https://\(apiKey):\(password)@\(hostname)" + "/admin/products.json"
let url = URL(string: shopUrl)
URLSession.shared.dataTask(with:url!, completionHandler: {(data, response, error) in
if error != nil {
print(error)
} else {
do {
let json = try JSONSerialization.jsonObject(with: data!, options: .allowFragments) as! [String:Any]
print(json)
} catch let error as NSError {
print(error)
}
}
}).resume()
Qualquer ajuda?