2017-09-29 2 views
0

Mon Json ressemble à ceci:analyse syntaxique JSON invalide Swift 4

data = { "key":"value", 
     "key":"value", 
     "key":"value"} 

J'ai essayé d'utiliser des protocoles Swift4 codables pour analyser JSON et ont utilisé à bon escient, mais pour la vie de moi je ne peux pas casser cette structure. Le data = extérieur le rend invalide JSON mais je n'arrive pas à trouver un moyen de modifier les données avant de tenter de le transmettre au JSONDecoder.

Y a-t-il un moyen de recevoir ces données sous forme de chaîne afin de pouvoir supprimer les caractères les plus externes et simplement analyser l'objet JSON restant?

+0

Où est que les données vient? – user28434

+0

Une API externe – kinghenry14

Répondre

2

func parseSomeUrl {

let someUrl = "http://api.someurl.com" 

guard let url = URL(string: someUrl) else {return} 

URLSession.shared.dataTask(with: url) {(myResponse, response, err) in 

    guard let data = data else {return} 

    do { 
     let data = try JSONDecoder().decode(myResponse.self, from: data) 
    } 
} catch let jsonErr { 
    print("Error serializing json:", jsonErr) 
} 

} .resume()