Convertitore da JSON a Env
Converti un oggetto JSON in formato .env KEY=VALUE, con appiattimento degli oggetti annidati e reinserimento dei commenti. Solo lato client.
Da un oggetto JSON a righe NOME=valore pronte per dotenv e per i loader che leggono il file .env all'avvio dell'app. Le chiavi annidate vengono unite con il punto (db.host), un array finisce su una sola riga come testo JSON, mentre true, false e i numeri restano testo semplice. Se il JSON arriva da Env a JSON, la mappa $comments torna a essere una serie di righe # sopra ogni variabile. Tutto gira nel browser: le chiavi segrete contenute nel JSON non escono dal tuo dispositivo.
Informazioni sul convertitore da JSON a Env
Una variabile d'ambiente contiene soltanto una stringa piatta, quindi passare da JSON a .env significa soprattutto decidere come chiamare le variabili. Con l'appiattimento attivo ogni percorso annidato viene unito dal separatore: { "app": { "cache": { "ttl": 60 } } } diventa app.cache.ttl=60, e maiuscole e minuscole di ogni chiave restano identiche a quelle scritte nel JSON. Attenzione però alla shell: un nome che contiene un punto non è una variabile valida, per cui se uno script farà source del file conviene usare il trattino basso come separatore (app_cache_ttl). Disattivando l'appiattimento gli oggetti annidati non vengono espansi: ognuno viene scritto dopo l'uguale come un'unica riga di testo JSON.
Potrebbe servirti anche
Come convertire JSON in .env
- 1
Parti da un oggetto
Nel pannello di input serve un oggetto: un array o un valore isolato non vanno bene. Con l'icona della beuta carichi un piccolo esempio piatto con una chiave API e una porta.
- 2
Decidi come nascono i nomi
Nelle Opzioni avanzate tieni il punto per nomi in stile dotenv come db.host, passa al trattino basso per nomi sicuri in shell come db_host, oppure spegni l'appiattimento per lasciare gli oggetti annidati come testo JSON.
- 3
Genera le variabili
Premi Converti: ogni valore foglia diventa una riga NOME=valore, nello stesso ordine delle chiavi originali, e le voci di $comments compaiono come righe # subito sopra la variabile a cui si riferiscono. I valori con un a capo, spazi iniziali o finali o un # vengono messi tra virgolette (l'a capo si scrive \n), così tornano identici quando li riconverti in JSON.
- 4
Salva il .env fuori da Git
Copia il testo o scarica il file .env; se contiene credenziali, tienilo fuori dal controllo di versione. L'icona per invertire la direzione lo rianalizza in JSON.
Riferimenti
- The Twelve-Factor App — Config
La metodologia alla base della memorizzazione della configurazione come variabili d'ambiente, che il formato di output di questo convertitore segue.
- dotenv (motdotla) — README
L'implementazione di riferimento per la sintassi dei file .env, che descrive come vengono convenzionalmente scritte le coppie KEY=VALUE e i commenti.
- RFC 8259 — The JSON Data Interchange Format
La specifica IETF per il formato JSON in input che questo strumento analizza.
Strumenti per sviluppatori correlati
Env a JSON
Converti un file .env in JSON, con inferenza dei tipi, chiavi annidate e conservazione dei commenti.
JSON a Properties
Converti un oggetto JSON in formato .properties Java, il flusso equivalente per i file properties.
Formattatore JSON
Incolla JSON grezzo e ottieni subito una vista formattata, con evidenziazione della sintassi e validazione, prima di convertirlo.
YAML a JSON
Converti tra i formati di configurazione YAML e JSON.
FAQ su JSON a Env
- Le chiavi vengono trasformate in maiuscolo?
- No. Ogni chiave mantiene esattamente le maiuscole e minuscole del JSON: { "db": { "host": "x" } } produce db.host=x, non DB.HOST. Su Linux e macOS i nomi delle variabili d'ambiente distinguono tra maiuscole e minuscole, quindi scrivi le chiavi JSON come le legge la tua applicazione.
- Uno script shell può fare source del .env generato?
- Solo se tutti i nomi sono identificatori validi per la shell: lettere, cifre e trattini bassi, senza una cifra in testa. Nomi puntati come db.host funzionano con dotenv per Node.js, ma la shell non li interpreta come assegnazioni; per i file da caricare con source scegli il trattino basso come separatore.
- Che fine fanno array e oggetti annidati?
- Con l'appiattimento attivo ogni oggetto annidato si scompone in variabili puntate separate, mentre un array resta intero su una riga di testo JSON, ad esempio tags=["a","b"]. Ad appiattimento spento anche gli oggetti annidati vengono scritti interi come testo JSON.
- Che tipo hanno booleani e numeri nel .env?
- Nessuno: un file .env non conosce i tipi, quindi true, false e i numeri vengono scritti come testo semplice. È Env a JSON, con Deduci tipi attivo, a riportarli a booleani e numeri veri.
- Si possono rigenerare i commenti sopra le variabili?
- Sì, se il JSON contiene un oggetto $comments come quello prodotto da Env a JSON: ogni voce diventa una riga # sopra la variabile corrispondente. Con Commenti su «Ignora» nelle Opzioni avanzate ottieni solo righe NOME=valore.
- Il JSON con i segreti viene inviato da qualche parte?
- No. La conversione avviene in locale nel browser, un dettaglio che conta perché un .env di solito custodisce chiavi API e password del database.
- Perché la conversione segnala un nome di variabile non valido?
- Un nome vuoto o che contiene spazi, =, :, #, virgolette o una barra rovesciata non si può rileggere da un file .env, quindi la conversione si ferma e indica la chiave invece di scrivere una riga inutilizzabile. Rinomina la chiave nel JSON, oppure scegli un altro separatore se il carattere è stato introdotto proprio dal separatore.