JSONをSwiftに変換
JSONをSwift POJO構造体に変換してSwift開発用に
JSON入力
Swift出力
JSONをSwiftとは?
REST APIを呼び出すiOSまたはmacOSアプリを作っていますか?JSONが返ってきますが、Swiftは安全にデコードするために明示的なCodable structsが必要です。APIエンドポイントごとにそれらのstructsを手書きするのは繰り返し作業で、ミスのもとです。このツールはJSONからSwift structsを自動生成し、Codable準拠も含まれています。サンプルレスポンスを貼り付けるだけで、JSONDecoderにすぐ使えるタイプが手に入ります。
変換はブラウザで実行されます。struct名を設定し、Use CodableとOptional Typesを有効にできます。サーバーには送信されません。
JSONをSwiftが役立つ場面
iOSやmacOSアプリでREST APIを消費する際、Codable structをここで生成してください。サンプルレスポンスを貼り付けると型付きモデルが得られます。
使い方
JSONを貼り付けまたはアップロード
JSONを左のエディタに貼り付けるか、ファイルをアップロードしてください。サンプルで例データを読み込めます。設定でStruct Name、Use Codable、Optional Typesを設定してください。
生成された型を確認
右パネルにSwift structまたはclassが表示されます。無効なJSONの場合は先にJSONバリデーターを使用してください。
コピーまたはダウンロード
コピーまたはダウンロードでコードを取得してください。先にJSONをフォーマットするにはJSONフォーマッターを、検証にはJSONバリデーターを使用してください。
JSONをSwiftの例
JSONオブジェクトからSwift structを生成する例です。
例:加入者レコード
JSON入力:
生成されたSwift出力:
JSONをSwiftが役立つ場面
iOSやmacOSアプリでREST APIを消費する際、レスポンスペイロード用のSwift型が必要です。サンプルレスポンスを貼り付けるとURLSessionやAlamofireで使えるCodable structが得られます。
よくある質問
SwiftのCodable structとは何ですか?
CodableはEncodable & Decodableのtypealiasです。Codable structはSwiftの組み込みJSONDecoderとJSONEncoderを使ってJSON形式に変換できます。iOSとmacOSアプリでJSONを扱うモダンで推奨される方法です。AppleのCodableガイドを参照してください。
SwiftでJSONをデコードするには?
JSONに合わせたCodable structを作り、JSONDecoder().decode(YourType.self, from: data)を呼びます。ここでstructを生成してください — JSONを貼り付けて結果をXcodeプロジェクトにコピーします。
SwiftのJSONモデルにstructとclassどちらを使う?
structsは値型であり、SwiftのDTOやJSONモデルに適しています — シンプルでスレッドセーフでCodableと相性抜群です。参照セマンティクスや継承が必要な場合はclassを使います。
JSONデータはサーバーに送信されますか?
いいえ。structの生成はブラウザ内で完全に実行されます。JSONがデバイスを離れることはないため、APIキーや機密ペイロードでも安全に使えます。
Alamofireで使えますか?
はい。AlamofireのresponseDecodable(of: YourType.self)はどんなCodable型でも動作します。ここでstructを生成してAlamofireのレスポンスハンドラにそのまま組み込んでください。