JSON para struct Swift Codable
Transforme uma amostra JSON numa struct Swift que está em conformidade com Codable.
JSON para struct Swift Codable
Cole uma amostra JSON e esta ferramenta infere a sua estrutura e gera uma struct Swift que está em conformidade com Codable, pronta para usar em projetos iOS, macOS ou Swift do lado do servidor. Objetos aninhados tornam-se suas próprias structs aninhadas, matrizes tornam-se matrizes Swift tipadas, e um valor que às vezes está ausente ou nulo torna-se uma propriedade opcional com um ponto de interrogação — assim o modelo gerado corresponde ao que a API realmente envia, não apenas a uma amostra de sorte.
As opções controlam a forma do código gerado. Escolha struct ou class para a declaração, e let ou var para mutabilidade das propriedades. Ativar CodingKeys converte chaves JSON snake_case, como user_name, na convenção camelCase do Swift e adiciona a enum CodingKeys correspondente, de modo que a descodificação ainda se alinhe com os nomes de campo originais; deixe desativado para manter as chaves JSON verbatim. O nível de acesso define se o tipo e as suas propriedades são public ou internal, datas como Date reconhece strings ISO-8601 e as escreve como Date em vez de String, e indentação permite-lhe combinar o estilo do seu projeto com 2 espaços, 4 espaços ou tabs.
Um campo que mistura tipos não relacionados numa matriz de amostra — um valor que é às vezes um número e às vezes uma string — recua para um wrapper AnyCodable pequeno que é apenas adicionado ao resultado quando é realmente necessário, de modo que a struct ainda compila em vez de adivinhar silenciosamente errado. Chaves que não são identificadores Swift válidos, incluindo emoji ou chaves começando com um dígito, são sanitizadas e mapeadas de volta através de CodingKeys automaticamente para que nada se perca.
Tudo é executado localmente no seu navegador enquanto escreve — nenhuma amostra JSON é nunca enviada ou transmitida para um servidor, o que é importante quando a amostra vem de uma resposta da API real. Copie a Swift gerada, transfira-a como ficheiro .txt, ou envie-a de volta para a entrada para refazê-la.