JSON sang Types — TypeScript, Python, Go, Java, C# & hơn thế nữa

Dán phản hồi API và nhận ngay model sẵn sàng sử dụng bằng 8 ngôn ngữ: TypeScript, Python (dataclass, TypedDict hoặc Pydantic), Go, Java, C#, Kotlin, Swift và Rust. Các object trong mảng sẽ được gộp lại, nên trường tùy chọn và trường nullable được phát hiện tự động.

Cập nhật
TypeScript

Dữ liệu của bạn không bao giờ rời khỏi máy tính. Mọi xử lý diễn ra 100% cục bộ trong trình duyệt của bạn.

Công cụ này có hữu ích không?0.0 0 lượt đánh giá
Tạo TypeScript interface hoặc type alias từ JSON ngay lập tứcJSON sang TypeScript →

Cách dùng JSON sang Types

  1. Dán một mẫu JSON — tốt nhất là phản hồi API thật có mảng chứa nhiều phần tử — hoặc nhấn Tải mẫu.
  2. Chọn ngôn ngữ và kiểu viết: ví dụ Pydantic v2 cho FastAPI, record cho Java hiện đại, hoặc class cho C#.
  3. Đặt tên cho root. Các object lồng nhau sẽ thành các kiểu riêng có tên (ví dụ Root, Address, OrderItem).
  4. Sao chép code hoặc tải xuống với đúng phần mở rộng tập tin.

Cách suy luận kiểu dữ liệu

  • Mảng object được gộp lại — trường bị thiếu ở một số phần tử sẽ trở thành tùy chọn; trường đôi khi là null sẽ trở thành nullable.
  • Số — số nguyên sẽ thành kiểu số nguyên (int, int64, long, i64); số có phần thập phân sẽ thành float/double.
  • Ngày tháng — chuỗi ISO 8601 như 2026-10-26T09:30:00Z có thể thành Date, datetime, time.Time, OffsetDateTime, DateTimeOffset hoặc DateTime<Utc>.
  • Giá trị hỗn hợp — TypeScript sẽ dùng union type; các ngôn ngữ chặt chẽ hơn sẽ dùng kiểu tổng quát như Any, interface{}, Object hoặc serde_json::Value.
  • Tên — các key không phải định danh hợp lệ sẽ được chuyển đổi (snake_case cho Python và Rust, PascalCase cho Go và C#, camelCase cho Java, Kotlin và Swift) và được ánh xạ lại bằng chú thích JSON của từng ngôn ngữ.

Kết quả theo từng ngôn ngữ

Ngôn ngữKiểu viếtÁnh xạ JSON
TypeScriptinterface, type aliasKey có dấu nháy khi cần thiết
Pythondataclass, TypedDict, Pydantic v2Field(alias=…)
GostructThẻ `json:"name,omitempty"`
Javarecord, POJOJackson @JsonProperty
C#record, classSystem.Text.Json [JsonPropertyName]
Kotlindata classkotlinx.serialization @SerialName
SwiftstructCodable với CodingKeys
Ruststructserde #[serde(rename)]

Mẹo

Hãy dán phản hồi có nhiều phần tử trong mỗi mảng — càng nhiều ví dụ, việc nhận diện trường tùy chọn và nullable càng chính xác. Chưa có dữ liệu mẫu? Hãy tạo bằng Mock Data Generator. Nếu chỉ làm việc với TypeScript và cần các tùy chọn như readonly hay cú pháp mảng, công cụ JSON to TypeScript có thêm nhiều cài đặt. Hãy làm sạch JSON lộn xộn trước bằng JSON Formatter.

Cũng được tìm dưới tên: chuyển json sang typescript, json sang python class, json to go struct, json sang java class, json sang c# class, json sang kotlin data class, json sang swift codable, json sang rust serde.

Các công cụ dùng kèm tốt với JSON sang Types

  • Công cụ tìm JSON Path — Dán payload webhook hoặc phản hồi API, nhấn vào giá trị bạn cần và sao chép đúng đường dẫn — cho JavaScript, JSONPath, jq, Python, PHP, n8n và Make.
  • JSON sang YAML — Dán JSON để nhận YAML sạch cho manifest Kubernetes, Docker Compose, GitHub Actions hoặc bất kỳ file cấu hình nào.
  • Chuyển cURL sang Code — Dán lệnh curl từ tài liệu API hoặc “Copy as cURL” trong DevTools của trình duyệt, rồi nhận ngay đoạn code chạy được cho sáu ngôn ngữ, giữ nguyên header, body và thông tin xác thực.
  • Kiểm tra JSON Schema — Dán schema và dữ liệu JSON để xem chính xác giá trị nào vi phạm quy tắc nào, hoặc tạo schema ban đầu từ dữ liệu mẫu.

Câu hỏi thường gặp

JSON của tôi có được tải lên không?
Không. Việc phân tích và sinh code hoàn toàn chạy trong trình duyệt của bạn, nên bạn có thể yên tâm dán phản hồi API thật.
Các trường tùy chọn được phát hiện như thế nào?
Khi một mảng chứa nhiều object, các key của chúng sẽ được gộp lại. Key bị thiếu ở ít nhất một object sẽ trở thành tùy chọn (ví dụ name?: string, Optional[str], omitempty). Tắt tùy chọn này nếu bạn muốn mọi trường đều bắt buộc.
Nên dùng kiểu Python nào?
Pydantic v2 nếu bạn cần kiểm tra dữ liệu (FastAPI, settings); dataclass cho các container có kiểu đơn giản; TypedDict khi bạn vẫn làm việc với dict, ví dụ kết quả của json.loads.
Điều gì xảy ra với mảng rỗng hoặc trường chỉ có null?
Không có dữ liệu nào để suy luận, nên chúng sẽ thành kiểu tổng quát (unknown, Any, interface{}, Object, JsonElement, JsonElement, Any hoặc serde_json::Value). Hãy thêm một phần tử mẫu để có kiểu chính xác hơn.
Tôi có thể cài JSON sang Types như một ứng dụng web và dùng khi không có mạng không?
Có. JSON sang Types là một ứng dụng web (PWA) có thể cài đặt — cài trực tiếp từ trình duyệt, không cần tải từ cửa hàng ứng dụng. Trên Chrome hoặc Edge (Windows, macOS, Linux, ChromeOS) hoặc Android, bấm Cài đặt ứng dụng ở đầu trang này; trên iPhone và iPad, dùng Chia sẻ → Thêm vào Màn hình chính; trên Mac, dùng File → Add to Dock trong Safari 17 trở lên. Sau đó ứng dụng mở trong cửa sổ riêng với biểu tượng riêng, và vì chạy hoàn toàn trên trình duyệt nên vẫn hoạt động khi không có mạng. Firefox trên máy tính không thể cài ứng dụng web. Cách cài đặt hoạt động thế nào.

Công cụ liên quan