Cách sử dụng
- Dán JSON vào bên trái, hoặc nhấn Tải ví dụ.
- Chọn thụt lề 2 hoặc 4 dấu cách. YAML hiện ra ngay khi bạn gõ.
- Nếu JSON không hợp lệ, lỗi sẽ hiện dòng bị lỗi.
- Sao chép hoặc tải YAML xuống, hoặc nhấn Đảo chiều để chuyển ngược YAML về JSON.
Giải thích tùy chọn
- Thụt lề
- 2 dấu cách là quy ước cho Kubernetes, Compose và GitHub Actions; một số nhóm dùng 4.
- Đặt trong dấu nháy
- Giá trị chỉ được đặt trong dấu nháy khi cần — ví dụ chuỗi chứa ": ", bắt đầu bằng ký tự đặc biệt, hoặc nếu không sẽ bị đọc thành số, boolean hay null (như "yes", "on", "1.0").
- Chuỗi dài
- Các dòng không bao giờ bị ngắt, nên giá trị dài như URL và certificate luôn nằm trên một dòng và so sánh (diff) sạch sẽ.
Ví dụ
JSON:
{"apiVersion":"v1","kind":"Service","metadata":{"name":"web"},"spec":{"ports":[{"port":80,"targetPort":8080}]}}
YAML:
apiVersion: v1
kind: Service
metadata:
name: web
spec:
ports:
- port: 80
targetPort: 8080
Câu hỏi thường gặp
YAML có phải là superset của JSON không?
Từ YAML 1.2, hầu hết mọi tài liệu JSON cũng là YAML hợp lệ. Chuyển sang YAML dạng block giúp cấu trúc dễ đọc, dễ sửa hơn và cho phép viết chú thích, điều JSON không làm được.
Vì sao một số chuỗi lại được đặt trong dấu nháy ở kết quả?
Nếu không có dấu nháy, YAML sẽ hiểu sai ý nghĩa. "on", "yes" và "no" là boolean trong bộ phân tích YAML 1.1, "1e3" là một số, và giá trị chứa ": " sẽ bắt đầu một mapping mới. Đặt trong dấu nháy giữ giá trị đó là chuỗi.
Thứ tự khóa có được giữ nguyên không?
Có. Khóa xuất hiện theo đúng thứ tự như trong JSON đầu vào.
Dữ liệu của tôi có bị tải lên không?
Không. Việc phân tích và chuyển đổi diễn ra ngay trong trình duyệt, điều quan trọng với cấu hình chứa hostname, token hoặc thông tin xác thực.
Quyền riêng tư
Công cụ này chạy hoàn toàn trong trình duyệt của bạn. Tệp và văn bản được xử lý ngay trên thiết bị và không bao giờ được tải lên máy chủ của chúng tôi.