Όλα τα εργαλεία

YAML σε JSON

Τα μανιφέστα Kubernetes, οι ενέργειες GitHub και τα αρχεία σύνθεσης docker είναι YAML. Ορισμένα API και διαμορφώσεις JavaScript θέλουν JSON. Μετατροπή μεταξύ μορφών τοπικά — βολικό όταν τα εργαλεία lint δέχονται μόνο JSON ή κατά την ενσωμάτωση διαμόρφωσης σε σενάρια πακέτου.json.
Είσοδος

Πώς να μετατρέψετε το YAML σε JSON

1. Επικολλήστε το YAML στο πρόγραμμα επεξεργασίας.
2. Εκτέλεση μετατροπής — τα συντακτικά σφάλματα εμφανίζουν υποδείξεις γραμμής.
3. Ελέγξτε τη δομή εξόδου JSON.
4. Αντιγράψτε το JSON για API ή εργαλείο επικύρωσης.

Παραδείγματα μετατροπής

απόσπασμα docker-compose

Ο χάρτης services.web.environment γίνεται ένθετο αντικείμενο JSON για εικονικό server.

Μήτρα GitHub Actions

strategy.matrix Το μπλοκ YAML γίνεται JSON για τη δημιουργία τεκμηρίωσης.

OpenAPIYAML

Μερική προδιαγραφή μετατράπηκε σε JSON για δοκιμή επικόλλησης διεπαφής χρήστη Swagger.

Πότε να χρησιμοποιήσετε αυτό το εργαλείο

Όταν το tooling δέχεται μόνο JSON (ορισμένοι επικυρωτές σχήματος).
Όταν ο κώδικας JavaScript χρειάζεται αναλυμένο αντικείμενο από την πηγή YAML.
Κατά τον εντοπισμό σφαλμάτων του YAML με προβολή ισοδύναμης δομής JSON.

Πότε να επιλέξετε κάτι άλλο

Όταν η ανθρώπινη δυνατότητα επεξεργασίας και τα σχόλια έχουν σημασία — το YAML υποστηρίζει # σχόλια που λείπουν από το JSON.
Όταν χρησιμοποιούνται άγκυρες και ψευδώνυμα (&ref, *ref) — η μετατροπή μπορεί να επεκταθεί απροσδόκητα.
Κατά την ανάπτυξη σε K8s — το σύμπλεγμα συνήθως αναμένει YAML.

Πρόβλημα της Νορβηγίας

Το μη εισαγωγικό ΟΧΙ στο YAML γίνεται ψευδές σε ορισμένους αναλυτές. Αναφέρετε κωδικούς χώρας και συμβολοσειρές έκδοσης όπως "1.0" για να αποφύγετε εκπλήξεις boolean/float στο JSON.

Ταξίδι μετ' επιστροφής του K8

το kubectl δέχεται επίσης JSON — η μετατροπή για επεξεργασία jq και, στη συνέχεια, είναι εντάξει, εάν επικυρώσετε πριν από την αίτηση.

Μυστικά στο YAML

Ποτέ μην επικολλάτε την παραγωγή kubeconfig με τα tokens μπορεί να εκτελεστεί εκ νέου σε τοπικό εργαλείο μετατροπής clipboard. μυστικά.

Συχνές ερωτήσεις

Σχόλια στο YAML;

Απογυμνωμένο στην έξοδο JSON — τα σχόλια δεν επιβιώνουν της μετατροπής.

Καρτέλες στο YAML;

Το YAML απαγορεύει τις καρτέλες για εσοχές — διορθώστε πρώτα τα κενά.

YAML πολλαπλών εγγράφων;

--- Τα χωρισμένα έγγραφα ενδέχεται να χρειάζονται χειροκίνητο διαχωρισμό.

Τύπος εξαναγκασμού;

Το YAML 1.1 αντιμετωπίζει το ναι/όχι ως δυαδικό — τα αποτελέσματα JSON true/false. Προσέξτε τους κωδικούς χωρών χωρίς εισαγωγικά, όπως ΟΧΙ για τη Νορβηγία.

Τοπικός;

Ναι.

JSON πίσω στο YAML;

Χρησιμοποιήστε ένα εργαλείο JSON-to-YAML εάν είναι διαθέσιμο. χειροκίνητη επανεγγραφή για σχόλια.