Я учусь в классе по разработке приложений для iOS Swift в моей школе.Я пытаюсь получить доступ к ключу определения в Oxford English Dictionary API, который вложен в несколько массивов и словарей.Я получил доступ к данным, которые находятся внутри ключа "lexicalEntries", но я больше не могу работать внутри API.
Я пытался использовать различные методы в своих попытках развернуть данные, но ни один из них не сработал,Закомментированы некоторые методы, которые я пытался использовать, и которые я включил, чтобы дать некоторый контекст.
func parse() {
let word_id = word.lowercased()
let url = URL(string: "https://od-api.oxforddictionaries.com:443/api/v1/entries/\(language)/\(word_id)")!
// let word = id
// let otherDefinitions = subsenses
var request = URLRequest(url: url)
request.addValue("application/json", forHTTPHeaderField: "Accept")
request.addValue(appId, forHTTPHeaderField: "app_id")
request.addValue(appKey, forHTTPHeaderField: "app_key")
let session = URLSession.shared
_ = session.dataTask(with: request, completionHandler: { data, response, error in
if let response = response,
let data = data,
let jsonData = try? JSONSerialization.jsonObject(with: data, options: .allowFragments) as! [String: AnyObject] {
// print(response)
// print(jsonData)
// print(jsonData["results"] as Any)
// print(jsonData["entries"] as Any) // does not work
//
let results = jsonData["results"] as? [JSONDictionary]
// let entries = jsonData["entries"] as Any //does not work
for result in results! {
print(result)
}
//working through entries level
// let lexicalEntries = results?["lexicalEntries"] as? [String:String]
// print(lexicalEntries)
// let entries = jsonData["entries"] as Any
// let senses = jsonData["senses"] as Any
// let definitions = jsonData["definitions"] as Any
// print(entries)
} else {
print(error ?? print("default Value Called"))
print(NSString.init(data: data!, encoding: String.Encoding.utf8.rawValue)!)
}
}).resume()
}
Во всех моих попытках единственными вложенными данными, которые мне удалось проанализировать, были "lexicalEntries«.Я не мог пройти эту точку, чтобы получить доступ к ключу определений внутри API.
Изображение структуры API: