Vai al contenuto

Convertitore da YAML a JSON

Ottieni JSON fedele da qualsiasi file YAML.

Output
Opzioni
Funziona nel browser: i tuoi dati non vengono caricati.

Come si usa

  1. Incolla il testo YAML nell'editor di input.
  2. Scegli Indentazione 2, Indentazione 4 o Minifica in Output.
  3. Controlla il risultato nell'editor JSON.

Esempi

Configurazione Compose con ancore

Input
x-base: &base
  image: nginx:alpine
  restart: unless-stopped
services:
  sito:
    <<: *base
    ports:
      - "8080:80"
  anteprima:
    <<: *base
    ports:
      - "8081:80"
Output
{
    "x-base": {
        "image": "nginx:alpine",
        "restart": "unless-stopped"
    },
    "services": {
        "sito": {
            "image": "nginx:alpine",
            "restart": "unless-stopped",
            "ports": [
                "8080:80"
            ]
        },
        "anteprima": {
            "image": "nginx:alpine",
            "restart": "unless-stopped",
            "ports": [
                "8081:80"
            ]
        }
    }
}

Risposte OpenAPI con codici HTTP

Input
responses:
  200:
    description: Ordine trovato
    content:
      application/json:
        example:
          id: 12345678901234567890
          stato: spedito
  404:
    description: Ordine non trovato
Output
{"responses":{"200":{"description":"Ordine trovato","content":{"application/json":{"example":{"id":12345678901234567890,"stato":"spedito"}}}},"404":{"description":"Ordine non trovato"}}}

Due risorse Kubernetes

Input
apiVersion: v1
kind: ConfigMap
metadata:
  name: negozio-config
data:
  lingua: it-IT
---
apiVersion: v1
kind: Service
metadata:
  name: negozio
spec:
  selector:
    app: negozio
  ports:
    - port: 80
      targetPort: 8080
Output
[
  {
    "apiVersion": "v1",
    "kind": "ConfigMap",
    "metadata": {
      "name": "negozio-config"
    },
    "data": {
      "lingua": "it-IT"
    }
  },
  {
    "apiVersion": "v1",
    "kind": "Service",
    "metadata": {
      "name": "negozio"
    },
    "spec": {
      "selector": {
        "app": "negozio"
      },
      "ports": [
        {
          "port": 80,
          "targetPort": 8080
        }
      ]
    }
  }
]

Come i tipi YAML diventano JSON

YAMLJSONNota
name: Alice, "02134"stringaI numeri tra virgolette restano stringhe.
30, 1.10, 0x1F, 12345678901234567890numeroScritti esattamente come nello YAML; esadecimali e ottali diventano decimali.
true, Falsebooleanoyes, no, on restano stringhe (YAML 1.2).
null, ~, valore vuotonull
2001-12-14, 12:30:00stringaNessuna conversione nascosta in timestamp.
elenchi, mappe, àncore, chiavi di merge <<array, oggettoGli alias vengono espansi; l'ordine delle chiavi viene mantenuto.
.inf, .nan, !!binary, !Ref, elenco come chiave—Errore con percorso e riga, mai una modifica silenziosa.

Domande frequenti

Come vengono convertiti yes, no, on e off?

Con YAML 1.2 restano stringhe; true e false sono booleani. Se il documento dichiara %YAML 1.1, si applicano le regole di quella versione e viene mostrata una nota.

I numeri perdono precisione nella conversione?

Il convertitore conserva esattamente numeri come 12345678901234567890, 1.10, 1e3 e -0. I numeri esadecimali e ottali vengono scritti in decimale.

Posso convertire un file YAML con più documenti?

Imposta Documenti multipli su Array JSON: ogni documento diventa un elemento dell'array e un documento vuoto diventa null. Con Rifiuta, un file con più documenti genera un errore.

Cosa succede se lo YAML contiene chiavi duplicate?

La conversione si interrompe con un errore che indica la chiave duplicata, la riga e la colonna. Nessun valore viene sovrascritto in silenzio.

Il contenuto YAML viene inviato a un server?

La conversione avviene nel browser e il codice dello strumento non invia i dati in rete. Gli eventi di Google Analytics contengono solo l'identificativo dello strumento, non il contenuto YAML o JSON.