Utilo

JSON から型生成

JSON から Go 構造体、Rust serde 構造体、Zod スキーマ、Pydantic モデル、Kotlin data class、Java record、C# クラス、Swift Codable、TypeScript 型を生成。配列内の省略可能・null 許容フィールドも自動判定します。

このJSONからタイプ生成器が何をする?

大きなAPIレスポンスのためのモデルクラスを手書きすることは遅いし誤りやすいものです。JSON サンプルを貼ると、このツールは完全な型モデルを推論し、json タグで Go 構造、serde 派生物、Zod スキーマ、Pydantic モデル、Kotlin データクラス、Java レコード、C# クラス、Swift Codable 構造、または TypeScript インターフェースで Rust 構造としてプリントします。網羅されたオブジェクトは独自の名前型になりますオブジェクトの配列は合併され任意の要素で見たすべてのフィールドが捕捉され Webワーカーで推論が実行されます

使い方

  1. JSON を入力に貼り付け、サンプルをロードします。
  2. ルート型名を設定します.例えば User または OrderResponse。
  3. 対象言語タブを選択します。出力は即座に再生します
  4. ドメインの知識が推論に勝っている場合の名前やタイプを調整します

推論の仕組み

  • オプションフィールド: 配列の要素にキーが欠けている場合は、オプションとして表示されます (TSでは?、RustではOption<T>、Goではomitempty、Pydanticでは= None)。
  • 無効フィールド: null の値は対象言語でフィールドを無効にする。
  • **数:**整数と浮遊は別々に追跡されるので、42は int64/i64/Longになり、4.2は浮遊型になる。
  • **ミックス型:**同じフィールドが異なる型を持つ場合、ユニオンを持つ言語 (TypeScript、Zod、Pydantic) はユニオンを取得し、他の言語は一般的なJSON値型に戻ります。
  • 名付け: user_id や created-at のようなキーが言語ごとに表情的なフィールド名に変換され、元のキーがタグや注釈 (json:"user_id"、#[serde(rename)]、@SerialName、CodingKeys) で保存されます。

おすすめ

  • 代表的なサンプルを与えます。空の配列を持つ単一のオブジェクトは配列の項目の情報についてツールに何も伝えません
  • 複数の応答を 1 つのトップレベル配列に統合してオプションフィールドを信頼的にキャプチャします。
  • 実行時の検証と静的入力が一緒になります実行時の検証と静的入力が一緒になります

よくある質問

私のJSONはどこかにアップロードされていますか?

違う違う。パルシングとコード生成は背景ワーカーでブラウザで行われます

なぜフィールドは any または interface{} とタイプされるのか?

nullでした特定のタイプは推測できません特定のタイプは推測できません。リアル値のサンプルを提供してください

デートもできる?

JSONには日付タイプがないので ISO文字列は文字列のままです。解読機がサポートしている場合は手動でtime.Time、datetimeまたはDateに変更します

JSON スキーマを生成できますか?

Zod または Pydantic の出力を使用します.両方のライブラリで JSON スキーマを直接エクスポートできます。

はい。すべての処理は JavaScript、Web Worker、Web API を使ってブラウザ内で直接行われます。入力・貼り付け・アップロードした内容がサーバーに送信されることはありません。

このページは英語から自動翻訳されています。誤りを見つけた場合はお知らせください。