Bộ chuyển đổi JSON ↔ YAML
Bộ chuyển đổi JSON ↔ YAML
Bộ chuyển đổi JSON ↔ YAML giúp đổi JSON sang YAML và YAML sang JSON, đồng thời định dạng, sắp xếp khóa và kiểm tra cấu hình Kubernetes/Helm/API Mọi xử lý đều diễn ra ngay trong trình duyệt.
Thụt lề JSON
Thụt lề YAML
Sắp xếp khóa đối tượng
Tách mảng thành YAML nhiều tài liệu (phân tách bằng ---)
JSON
⇄
YAML
Bắt đầu nhanh
Tình huống sử dụng phổ biến
Tác giả Kubernetes
chuyển đổi các bảng kê khai tài nguyên K8 giữa YAML và JSON để kiểm tra cấu trúc từ một trong hai chế độ xem.
Gỡ lỗi giá trị Helm
chuyển đổi value.yaml thành JSON để kiểm tra các loại và lồng trong IDE của bạn.
Đường dẫn CI/CD
nhanh chóng chuyển đổi các đoạn mã giữa các hành động GitHub (YAML) và các hệ thống CI sử dụng JSON.
Gỡ lỗi API
chuyển đổi tải trọng JSON sang YAML để có chế độ xem phân cấp rõ ràng hơn.
Di chuyển cấu hình
chuyển đổi hàng loạt tệp cấu hình giữa YAML và JSON.
Định dạng và xác thực
xác minh cú pháp JSON/YAML thông qua đồng bộ hóa hai chiều, với vị trí lỗi dòng/cột.
Gợi ý sử dụng
Giới hạn & khả năng tương thích
Quyền riêng tư & bảo mật
Câu hỏi thường gặp
JSON và YAML có thể biểu thị cùng loại dữ liệu (đối tượng, mảng, chuỗi, số), nhưng cú pháp của chúng khác nhau: • JSON sử dụng dấu ngoặc nhọn/ngoặc và dấu ngoặc kép, có cú pháp chặt chẽ hơn và không hỗ trợ nhận xét. • YAML sử dụng thụt lề để phân cấp, dễ đọc hơn và hỗ trợ nhận xét nhưng nhạy cảm với khoảng trắng. Quy tắc ngón tay cái: • Đối với các API và trao đổi dữ liệu giữa các máy, hãy ưu tiên JSON. • Đối với các cấu hình Kubernetes/Helm/CI mà con người thường chỉnh sửa, hãy ưu tiên YAML. • Bạn có thể chuyển đổi giữa chúng mà không cần thay đổi mô hình dữ liệu.
Điều này xuất phát từ hành vi cũ của YAML 1.1, trong đó có/không/bật/tắt/y/n có thể được phân tích cú pháp dưới dạng boolean. Công cụ này tuân theo YAML 1.2, trong đó chỉ có giá trị boolean đúng/sai. Nếu bạn cần các giá trị chuỗi, hãy trích dẫn chúng (ví dụ: "có").
JSON (RFC 8259) không cho phép bình luận. Vì vậy, các nhận xét YAML không thể được giữ nguyên trong chuyển đổi YAML→JSON và chúng không thể được xây dựng lại khi chuyển đổi trở lại. Giữ lại tệp YAML gốc nếu có ý kiến quan trọng.
--- là bộ phân tách tài liệu của YAML, dùng để lưu trữ nhiều tài liệu độc lập trong một file. Điều này phổ biến trong Kubernetes, trong đó một tệp có thể chứa các định nghĩa Triển khai, Dịch vụ và Bản đồ cấu hình. Công cụ này đọc YAML nhiều tài liệu dưới dạng một mảng JSON và cũng có thể chia mảng JSON thành --- các tài liệu YAML được phân tách.
JavaScript sử dụng số có độ chính xác kép IEEE 754. Số nguyên an toàn nằm trong khoảng từ -(2^53-1) đến 2^53-1 (±9007199254740991). Số nguyên lớn hơn (ví dụ: ID bông tuyết hoặc dấu thời gian 64 bit) có thể mất độ chính xác. Để bảo toàn các giá trị chính xác, hãy lưu trữ chúng dưới dạng chuỗi, chẳng hạn như "9007199254740992".
Neo (&name) và bí danh (*name) là các tính năng tái sử dụng dành riêng cho YAML. JSON không có cơ chế tham chiếu tương đương nên bí danh được mở rộng thành bản sao đầy đủ trong quá trình chuyển đổi. Đây là một phép biến đổi tổn thất và cấu trúc neo ban đầu không thể được khôi phục tự động.