ตัวแปลง YAML เป็น JSON
แปลงไฟล์ YAML เป็น JSON ได้ทันที
อินพุต YAML
ตัวเลือก
เอาต์พุต JSON
ภาพรวม
ตัวแปลง YAML เป็น JSON จะแปลงเอกสาร YAML — Kubernetes manifest, ไฟล์ Docker Compose, คำนิยามไปป์ไลน์ CI/CD, การกำหนดค่าแอปพลิเคชัน — ให้กลายเป็น JSON ที่สะอาดและเครื่องอ่านได้ เพียงวาง YAML ใดก็ตามที่ resolve เป็น mapping หรือ sequence ตัวแยกวิเคราะห์จะขยาย anchor และ alias แก้ไข type tag มาตรฐาน และสร้าง JSON แบบเยื้องหรือแบบกะทัดรัดที่โค้ด, API หรือเครื่องมือ build ของคุณนำไปใช้ได้ทันที
สิ่งที่ตัวแปลงนี้ตรวจจับและจัดการ
- •การแยกวิเคราะห์ YAML แบบเต็มรูปแบบผ่าน js-yaml: block style, flow style และโครงสร้างซ้อนแบบผสมทั้งหมดถูกแปลงด้วยวิธีเดียวกัน
- •การแก้ไข anchor และ alias: การอ้างอิง '&anchor' / '*alias' จะถูกขยายเป็นค่าเต็มในผลลัพธ์ JSON
- •การแปลงประเภทข้อมูลอัตโนมัติ: บูลีน, null, จำนวนเต็ม, ทศนิยม และวันที่แบบ ISO ใน YAML จะถูกแปลงเป็นประเภท JSON แบบเนทีฟที่ตรงกัน
- •การตรวจจับรูปแบบแบบเรียลไทม์: จดจำว่าเป็น YAML หรือ JSON ขณะที่คุณพิมพ์ และแนะนำทิศทางการแปลงที่ตรงกัน
- •การเยื้องผลลัพธ์ที่ปรับแต่งได้: JSON แบบเยื้อง 2 ช่องว่างหรือ 4 ช่องว่างเพื่อให้อ่านง่าย
- •ทำงานทั้งหมดในเบราว์เซอร์ของคุณ: ข้อมูล YAML ของคุณจะไม่ถูกอัปโหลดไปยังเซิร์ฟเวอร์เลย
เมื่อใดที่คุณควรแปลง YAML เป็น JSON
- •แปลง Kubernetes manifest หรือไฟล์ values ของ Helm ให้เป็น JSON สำหรับ Kubernetes REST API หรือตัวตรวจสอบ JSON Schema
- •แปลงไฟล์ Docker Compose ให้เป็น JSON เพื่อตรวจสอบด้วยโปรแกรมใน Node.js หรือสคริปต์ Python
- •ป้อนคำนิยามไปป์ไลน์ YAML ของ GitHub Actions หรือ GitLab CI เข้าสู่เครื่องมือ linting หรือแสดงผลภาพที่ใช้ JSON
- •ดึงค่าจาก config.yaml ของแอปพลิเคชันสำหรับฟรอนต์เอนด์ที่ต้องการ JSON
- •เตรียมเทมเพลต infrastructure-as-code ที่ใช้ YAML (Ansible, CloudFormation) สำหรับเครื่องมือที่ขับเคลื่อนด้วย JSON
วิธีแปลง YAML เป็น JSON
- 1.วาง YAML ของคุณลงในตัวแก้ไขข้อมูลนำเข้า หรืออัปโหลดไฟล์ .yaml/.yml
- 2.ปล่อยให้การตรวจจับอัตโนมัติยืนยันทิศทาง หรือเลือก 'YAML to JSON' ด้วยตนเอง
- 3.เลือกการเยื้อง 2 ช่องว่างหรือ 4 ช่องว่างสำหรับผลลัพธ์ JSON
- 4.คลิก Convert เพื่อเรียกใช้การแปลง
- 5.คัดลอกผลลัพธ์ JSON หรือดาวน์โหลดเป็นไฟล์ .json
กรณีขอบเขตที่ควรรู้
- •ไม่รองรับ YAML stream แบบหลายเอกสาร (ไฟล์ที่มีตัวคั่น '---' ระหว่างเอกสาร) — ตัวแยกวิเคราะห์จะโยนข้อผิดพลาด ('expected a single document in the stream') แทนที่จะแปลงเฉพาะเอกสารแรก ดังนั้นโปรดแยกไฟล์หลายเอกสารออกเป็นเอกสารแยกกันก่อนแปลง
- •คอมเมนต์ ('# ...') จะถูกทิ้งทั้งหมด เนื่องจาก JSON ไม่มีไวยากรณ์คอมเมนต์ — โปรดตรวจสอบคอมเมนต์สำคัญก่อนแปลง
- •แท็ก YAML ที่กำหนดเองหรือเฉพาะแอปพลิเคชัน (สิ่งใดก็ตามที่อยู่นอกเหนือ schema มาตรฐาน) อาจแยกวิเคราะห์ไม่สำเร็จหรือถูกตีความผิด
- •คีย์ที่ซ้ำกันภายใน YAML mapping เดียวกันจะถูกปฏิเสธโดยสิ้นเชิง — ตัวแยกวิเคราะห์จะโยนข้อผิดพลาด 'duplicated mapping key' แทนที่จะเก็บค่าสุดท้ายไว้อย่างเงียบๆ ดังนั้นโปรดแก้ไขคีย์ที่ซ้ำกันในต้นฉบับก่อนแปลง
ข้อจำกัด
- •anchor และ alias จะถูกขยาย (ทำซ้ำ) ในผลลัพธ์ JSON แทนที่จะถูกเก็บไว้เป็นการอ้างอิง เนื่องจาก JSON ไม่มีกลไกที่เทียบเท่า
- •ไฟล์ YAML ขนาดใหญ่มาก (Kubernetes CRD ที่ซ้อนลึก, Helm chart ขนาดใหญ่) อาจเกินหน่วยความจำของเบราว์เซอร์ — ให้ใช้ 'yq' หรือไปป์ไลน์ที่ใช้สคริปต์สำหรับเอกสารขนาดใหญ่มาก
- •เครื่องมือนี้ไม่ได้ตรวจสอบ YAML เทียบกับ schema (Kubernetes OpenAPI, JSON Schema) — จะตรวจสอบเพียงว่า YAML เองสามารถแยกวิเคราะห์ได้หรือไม่
ต้องการแปลงกลับทิศทางหรือไม่?
หากคุณเริ่มต้นจาก JSON — การตอบกลับ API, การกำหนดค่ารูปแบบ package.json หรือการตั้งค่าแอปพลิเคชันที่ส่งออกมา — และต้องการ YAML ที่มนุษย์แก้ไขได้ง่ายสำหรับ Kubernetes manifest, ไปป์ไลน์ CI หรือไฟล์การกำหนดค่า ให้ใช้ตัวแปลง JSON เป็น YAML แทน โดยจะสร้างผลลัพธ์เป็น YAML แบบ block-style ที่สะอาด และใส่เครื่องหมายคำพูดให้กับค่า scalar ที่อาจถูกตีความผิดว่าเป็นคำสงวนของ YAML โดยอัตโนมัติ