Я пытаюсь проанализировать некоторые вложенные файлы JSON, полученные с помощью API, но у меня возникают проблемы с выделением определенных пар ключ-значение.На самом деле, у меня есть некоторая путаница по поводу разницы между данными JSON и словарем, полученным в результате сериализации.
Для извлечения данных, которые я использую:
let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data, error == nil else {
return
}
Чтобы преобразовать данные вСловарь JSON, я делаю
do {
let stringDic = try JSONSerialization.jsonObject(with: data, options: []) as? [String : Any]
} catch let error {
print(error)
}
При печати получается вложенный вывод в форме:
Optional(["document_tone": {
"tone_categories" = (
{
"category_id" = "emotion_tone";
"category_name" = "Emotion Tone";
and so forth
Мой вопрос заключается в том, как получить уникальное значение, например значение дляключ category_name
?
Если я попытаюсь использовать
let myCat = stringDic["category_name"]
Исправить - для этого требуется let document_tone = stringDic?["document_tone"]
, который при печати на консоли просто печатает весь словарь снова.
Заранее спасибо за любые предложения.