Escriba ‘Cualquiera’ No tiene miembros de subíndice en xcode 8 Swift 3

Mi aplicación se supone que debe ir a una ubicación específica para desplegar el sitio web que necesita cargar. En 2.3 funcionó a las mil maravillas, pero desde que actualicé xcode (que no tengo mucha experiencia en) me está dando el error “teclee ‘Cualquiera’ no tiene miembros subíndices” y resalta el “json” justo antes de la línea tres

...Retriever = json["WEB"]... 

este es el código relacionado con esto.

 let json = try JSONSerialization.jsonObject(with: data!, options:.allowFragments) if let Retriever = json["WEB"] as? [[String: AnyObject]] { for website in Retriever { if let name = website["URL"] as? String { self.loadAddressURL(name) 

Siento que me falta algo pequeño. Si hay una mejor manera de hacerlo, me gustaría sugerencias. La URL devuelve este JSON

 { "WEB" : [ { "URL" : "http://www.google.com" } ] } 

pero me encantaría si pudiera simplificarlo solo

 {"URL":"http://www.google.com"} 

Prueba esto:

 let json = try JSONSerialization.jsonObject(with: data!, options:.allowFragments) as! [String:AnyObject] 

Camino seguro:

 do { if let json = try JSONSerialization.jsonObject(with: data!, options:.allowFragments) as? [String:Any] { print(json) } } catch let err{ print(err.localizedDescription) } 

Tienes que [String:AnyObject] tipo Any al tipo de diccionario Swift [String:AnyObject] .

Editar: Swift 3
En swift 3 el propósito de AnyObject es más claro. Entonces, el tipo de diccionario Swift más favorable será [String:Any] .

Any es un alias para cualquier tipo de datos.
AnyObject es un alias para cualquier tipo de datos derivado de una clase.

Para obtener más información, visite: https://craiggrummitt.com/2016/09/16/any-vs-anyobject-vs-nsobject-in-swift-3/