Conversie van YAML naar JSON-formaat — Numio
Parseert één YAML-document met de yaml-bibliotheek (YAML 1.2 kernschema) en voert dit uit als ingesprongen JSON. Opmerkingen worden verwijderd, ankers en aliassen worden uitgebreid en waarden als ja of 01-01-2024 blijven tekenreeksen.
Instellingen die in YAML zijn geschreven, verzenden naar een API- of JSON-schemavalidator die alleen JSON accepteert.
Wanneer gebruik je dit?
- Instellingen die in YAML zijn geschreven, verzenden naar een API- of JSON-schemavalidator die alleen JSON accepteert.
- Controleren hoe een CI- of Kubernetes-bestand daadwerkelijk is getypt, b.v. of een versie een string of een getal is.
Hoe werkt het
- Plak één YAML-document of laad een .yaml/.yml-bestand.
- Als er een fout optreedt, controleer dan de inspringing, dubbele sleutels en --- scheidingstekens op de gerapporteerde regel.
- Controleer tekenreeksen versus getallen in de JSON-uitvoer en kopieer deze vervolgens.
YAML-ingang
# deployment settings service: billing-api replicas: 2 version: "1.10" enabled: yes ports: - 80 - 443 env: LOG_LEVEL: info
JSON
{
"service": "billing-api",
"replicas": 2,
"version": "1.10",
"enabled": "yes",
"ports": [
80,
443
],
"env": {
"LOG_LEVEL": "info"
}
}Details en beperkingen
Het parseren gebeurt in de browser. De uitvoer is altijd JSON met 2 spaties; er is geen optie voor verkleinen.
De regels voor YAML 1.2 zijn van toepassing: ja/nee/aan/uit zijn strings, geen booleans, en datums zonder aanhalingstekens blijven strings. 0o17 is octaal (15).
Samenvoegsleutels (<<: *anchor) worden niet samengevoegd; ze verschijnen als een letterlijke "<<"-sleutel. Dubbele sleutels in één toewijzing zijn een fout.
Gehele getallen groter dan 2^53 verliezen precisie in JSON. Citeer lange ID's in de YAML.
FAQ
Kan het een bestand converteren met verschillende documenten gescheiden door ---?
Nee. Meerdere documenten veroorzaken de foutmelding "Bron bevat meerdere documenten". Plak één document tegelijk. Eén enkele leiding --- is prima.
Waarom is ingeschakeld: ja een string in de JSON?
De parser volgt YAML 1.2, waarbij alleen waar en onwaar booleaanse waarden zijn. Schrijf waar/onwaar als u een JSON-boolean nodig heeft.
Worden ankers en aliassen ondersteund?
Ja. Een alias zoals *base wordt vervangen door een kopie van de verankerde waarde. De YAML 1.1-samenvoegsleutel << wordt echter niet toegepast.