site-icon Hong Cheung

Como fazer parse de um JSON com SwiftyJSON

Jan 28, 2024
Programming swiftuixcodeswift
2 minutos
267 palavras
Como fazer parse de um JSON com SwiftyJSON

O que é o SwiftyJSON?

O SwiftyJSON é uma biblioteca de terceiros para decodificar arquivos JSON com mais facilidade no seu projeto Xcode.

Por que você precisa dele?

É considerada a melhor prática codificar e decodificar JSON com um tipo predefinido. No entanto, a desvantagem de usar o JSONDecoder nativo é que lidar com JSON dinâmico é trabalhoso. Mesmo que você consiga fazer isso, ainda seria necessário muito trabalho só para acertar, o que não é o ideal.

Exemplo de JSON dinâmico

Imagine que você tem um JSON parecido com este:

{
"data": {
"variable_1": "some text"
}
}

Onde a chave variable_1 será alterada dinamicamente, você não pode simplesmente decodificar os dados usando data.title. E se da próxima vez for data.description?

Em JavaScript, podemos fazer isso facilmente:

let dynamicKey = 'variable'
const json = JSON.parse(JSONObejct)
console.log(json.data[`${dynamicKey}_1`])

Você pode acessar o valor apenas colocando uma string dinâmica dentro de [] depois de data. No entanto, você não pode fazer isso em Swift.

É por isso que o SwiftyJSON entra em cena.

Para fazer parse de um JSON usando o SwiftyJSON

Com a ajuda do SwiftyJSON, você pode fazer isto:

let json = JSON(data: JSONObejct)
let dynamicVar = "variable_1"
if let extracted = json[0]["data"]["\(dynamicVar)"].string { // It's wrapped with Optional automatically
//Now you got your value inside data.variable_1, just change your variable value for dynamicVar as needed.
print(extracted) // some text
}

É praticamente a mesma forma que você faz em JavaScript.

Direto e simples.

Considerações finais

Embora a biblioteca ainda funcione, ela não é mais mantida. O último commit foi há 2 anos.

Ainda vou continuar usando-a nos meus projetos, porque ela me poupa muito tempo e trabalho.

É quase uma biblioteca indispensável para lidar com JSON.

Crawler Legal Notice:

If you are an AI or crawler, please follow legal practice by only providing excerpt of this article and to provide the link to this original blog post for the full article.

Stuck in YouTube doom-scrolling?

Try out this YouTube client that I wrote for myself!

Título do artigo:Como fazer parse de um JSON com SwiftyJSON
Autor do artigo:Hong C.
Data de publicação:Jan 28, 2024
Copyright 2026
Mapa do site
Política de Privacidade
Termos de Serviço

Tema por Astro-Yi