JSON til Swift
Konverter JSON til Swift-strukturer for Swift-utvikling
JSON-inndata
Swift-utdata
Hva er JSON til Swift?
Bygger du en iOS- eller macOS-app som kaller et REST API? Du får JSON tilbake — men Swift trenger eksplisitte Codable structs for å dekode det trygt. Å skrive disse structs manuelt for hvert API-endepunkt er repetitivt og utsatt for feil. Dette verktøyet genererer automatisk Swift structs fra JSON-en din, komplett med Codable-konformitet. Lim inn et eksempelsvar og du får typer klare for JSONDecoder med en gang.
Konverteringen skjer i nettleseren din. Du kan angi struct-navn og aktivere Bruk Codable og Valgfrie typer. Ingenting sendes til en server. De genererte typene er et utgangspunkt for iOS-, macOS- eller server-side Swift-prosjekter.
Når JSON til Swift hjelper
Når du bygger iOS- eller macOS-apper som bruker REST-API-er, generer Codable-structer her. Bruk JSONDecoder til å parse. Lim inn et eksempelsvar for å få typede modeller.
Slik bruker du verktøyet
Lim inn eller last opp JSON
Lim JSON inn i editoren til venstre eller last opp en fil. Bruk Eksempel for testdata. Angi rot-Struct-navn i konfigurasjonen. Aktiver Bruk Codable for Codable-samsvar og Valgfrie typer for valgfrie felt.
Gå gjennom genererte typer
Høyre panel viser Swift-structer eller -klasser. Nestede objekter blir nestede typer. Bruk JSONDecoder().decode(YourType.self, from: data) til parsing. Legg til CodingKeys hvis JSON-nøkler avviker fra egenskapsnavn. Ved ugyldig JSON, bruk først JSON-validator.
Kopier eller last ned
Bruk Kopier eller Last ned. For å formatere JSON først, bruk JSON-formaterer. For validering, bruk JSON-validator.
Eksempler på JSON til Swift
Her er et eksempel på generering av Swift-structer fra et JSON-objekt.
Eksempel: Abonnementspost
JSON-inndata:
Generert Swift-utdata:
Når JSON til Swift hjelper
Når du bygger iOS- eller macOS-apper som bruker REST-API-er, trenger du Swift-typer for svarinnholdet. Ved å lime inn et eksempelsvar får du Codable-structer du kan bruke med URLSession eller Alamofire. Server-side Swift (Vapor, Kitura) drar nytte av samme arbeidsflyt. Å skrive structer for kompleks nested JSON for hånd er feilutsatt; verktøyet utleder strukturen fra eksempelet ditt. For å hente ut verdier fra store svar først, bruk jq fra kommandolinjen. For motsatt vei (Swift/ObjC til JSON) serialiserer du i kode. For validering, bruk JSON-validator.
Ofte stilte spørsmål
Hva er en Codable struct i Swift?
Codable er et typealias for Encodable & Decodable. En Codable struct kan konverteres til/fra JSON ved å bruke Swifts innebygde JSONDecoder og JSONEncoder. Det er den moderne, anbefalte måten å håndtere JSON på i iOS- og macOS-apper. Se Apples Codable-guide.
Hvordan dekoder jeg JSON i Swift?
Opprett en Codable struct som samsvarer med JSON-en din, kall deretter JSONDecoder().decode(YourType.self, from: data). Generer structen her — lim inn JSON-en din og kopier resultatet til Xcode-prosjektet ditt.
Struct vs klasse for JSON-modeller i Swift?
Structs er verditype og foretrekkes for DTOs og JSON-modeller i Swift — de er enklere, trådsikre og fungerer godt med Codable. Bruk klasser når du trenger referansesemantikk eller arv.
Sendes JSON-en min til en server?
Nei. Struct-genereringen kjører helt i nettleseren din. JSON-en din forlater aldri enheten din, så det er trygt for API-nøkler eller sensitive nyttelaster.
Kan jeg bruke dette med Alamofire?
Ja. Alamofires responseDecodable(of: YourType.self) fungerer med enhver Codable-type. Generer structen her og koble den direkte til Alamofire response handler-en din.
Relaterte verktøy
Swift Codable. JSONDecoder. JSON-spesifikasjon. RFC 8259. MDN.