Konwerter .env na JSON
Wklej plik .env i od razu otrzymaj JSON. Hasła, klucze API i tokeny nigdy nie opuszczają przeglądarki — 100% prywatnie, bez wysyłania, parser dotenv.
Opcje · 2 spacje · ciągi znaków
Czym jest plik .env?
Plik .env (plik dotenv) to zwykła tekstowa lista par KEY=VALUE, służąca do trzymania konfiguracji i sekretów poza kodem źródłowym. To faktyczny standard dla zmiennych środowiskowych w Node.js, Vite, Next.js, Pythonie, Ruby, Docker Compose i niemal każdym nowoczesnym frameworku — biblioteka dotenv i jej porty ładują plik i wstrzykują każdą parę do środowiska procesu. Ponieważ plik zwykle zawiera hasła do bazy danych, klucze API, sekrety klienta OAuth i tokeny dostępu, prawie zawsze jest ignorowany przez git i traktowany jako wrażliwy.
Konwersja pliku .env na JSON to częste zadanie: musisz podać konfigurację narzędziu, które czyta JSON, zweryfikować ją względem schematu JSON, zaimportować ją do menedżera sekretów, wygenerować typowane obiekty konfiguracji albo po prostu obejrzeć długi .env w jednym spojrzeniu jako dane strukturalne. Ten konwerter zamienia płaską listę par w pojedynczy obiekt JSON, jedna właściwość na klucz.
To narzędzie zbudowano wokół kilku świadomych decyzji:
**1. Ciągi znaków domyślnie, typy na żądanie.** dotenv nigdy nie wymusza typów — w czasie działania każda wartość process.env jest ciągiem znaków. Domyślny wynik dokładnie to respektuje, więc JSON odpowiada temu, co Twoja aplikacja faktycznie widzi. Gdy chcesz typowany JSON, opcjonalny przełącznik „Wnioskuj typy” promuje liczby, wartości logiczne i null bez cudzysłowów, a wartości w cudzysłowach pozostają ciągami znaków, ponieważ cudzysłowy są jawnym sygnałem.
**2. Wierne parsowanie dotenv.** Komentarze, puste linie, prefiks export, pojedyncze i podwójne cudzysłowy, sekwencje ucieczki, wieloliniowe wartości w podwójnych cudzysłowach i komentarze inline przy wartościach bez cudzysłowów — wszystko jest obsługiwane tak, jak robi to biblioteka dotenv — żadnych niespodzianek, gdy porównasz JSON z tym, co ładuje Twoja aplikacja.
**3. Bezpieczeństwo zduplikowanych kluczy.** Gdy klucz jest zdefiniowany dwukrotnie, wygrywa późniejsza wartość, a ostrzeżenie mówi Ci, które klucze się zduplikowały, aby przypadkowo przesłonięty sekret nigdy nie umknął niezauważony.
**4. 100% prywatności po stronie przeglądarki.** Twoje dane .env nigdy nie opuszczają przeglądarki. Nie ma wysyłania, nie ma rundy do serwera ani logowania — możesz zweryfikować zero żądań sieciowych na karcie Sieć w DevTools. To jedyny odpowiedzialny sposób konwersji prawdziwego .env online, ponieważ plik to w istocie lista poświadczeń.
Po konwersji możesz sformatować lub zweryfikować wynik za pomocą formatera JSON, dodać sekwencje ucieczki w celu osadzenia go w innym ciągu za pomocą escape JSON lub przejść w drugą stronę za pomocą towarzyszącego konwertera JSON na .env. Jeśli Twoja konfiguracja żyje w YAML, wypróbuj YAML na JSON.
// Parse a .env file to a JSON object in Node.js using dotenv
import { parse } from 'dotenv';
const envText = `# Database
DATABASE_URL=postgres://user:pass@localhost:5432/mydb
DEBUG=true`;
// dotenv.parse returns a plain object of string values
const parsed = parse(envText);
// Every value is a string, just like process.env
const json = JSON.stringify(parsed, null, 2);
console.log(json);
// {
// "DATABASE_URL": "postgres://user:pass@localhost:5432/mydb",
// "DEBUG": "true"
// } Kluczowe funkcje
Wierne parsowanie dotenv
Obsługuje komentarze, prefiks export, pojedyncze i podwójne cudzysłowy, sekwencje ucieczki (\n \t \r \\ \"), wieloliniowe wartości w podwójnych cudzysłowach i komentarze inline — dokładnie tak, jak robi to biblioteka dotenv.
Ciągi znaków domyślnie, typy na żądanie
Wartości są domyślnie ciągami znaków JSON, aby odpowiadać zachowaniu dotenv w czasie działania. Włącz „Wnioskuj typy”, aby promować liczby, wartości logiczne i null bez cudzysłowów; wartości w cudzysłowach zawsze pozostają ciągami znaków.
Ostrzeżenia o zduplikowanych kluczach
Jeśli klucz jest zdefiniowany dwukrotnie, wygrywa ostatnia wartość (zachowanie dotenv), a ostrzeżenie wymienia każdy zduplikowany klucz, aby po cichu nadpisany sekret nie umknął niezauważony.
Konwersja na żywo
Wynik JSON aktualizuje się natychmiast w trakcie pisania lub wklejania. Duże dane wejściowe (powyżej 200 KB) automatycznie przełączają się w tryb ręczny z przyciskiem Konwertuj, aby przeglądarka pozostała responsywna.
Wcięcie 2 lub 4 spacje
Przełączaj między wcięciem 2-spacjowym a 4-spacjowym dla wyniku JSON, aby dopasować się do stylu Twojej bazy kodu lub narzędzi w dalszej części potoku.
100% prywatności po stronie przeglądarki
Całe parsowanie działa lokalnie w Twojej przeglądarce. Twoje dane .env — hasła do bazy danych, klucze API, tokeny — nigdy nie są wysyłane, logowane ani przechowywane na żadnym serwerze.
Przykłady
Plik .env Node / Vite
# Database DATABASE_URL=postgres://user:pass@localhost:5432/mydb DATABASE_POOL_SIZE=10 # Auth JWT_SECRET="super secret value" SESSION_TIMEOUT=3600 # Feature flags ENABLE_SIGNUP=true VITE_API_BASE=https://api.example.com
{
"DATABASE_URL": "postgres://user:pass@localhost:5432/mydb",
"DATABASE_POOL_SIZE": "10",
"JWT_SECRET": "super secret value",
"SESSION_TIMEOUT": "3600",
"ENABLE_SIGNUP": "true",
"VITE_API_BASE": "https://api.example.com"
} Typowy plik .env dla Node.js / Vite. Domyślnie każda wartość staje się ciągiem znaków JSON (standard dotenv). Linie komentarzy i puste linie są pomijane. Włącz opcję „Wnioskuj typy”, jeśli chcesz, aby 10 stało się liczbą, a true wartością logiczną.
Środowisko Docker Compose
POSTGRES_DB=mydb POSTGRES_USER=admin POSTGRES_PASSWORD=s3cr3t! PGDATA=/var/lib/postgresql/data TZ=UTC NGINX_HOST=example.com NGINX_PORT=80
{
"POSTGRES_DB": "mydb",
"POSTGRES_USER": "admin",
"POSTGRES_PASSWORD": "s3cr3t!",
"PGDATA": "/var/lib/postgresql/data",
"TZ": "UTC",
"NGINX_HOST": "example.com",
"NGINX_PORT": "80"
} Zamień plik env_file, który czyta Twój stos Docker Compose, na JSON, aby wczytać go do skryptu, walidatora konfiguracji lub menedżera sekretów. Nic nie jest wysyłane — bezpieczne dla prawdziwych poświadczeń.
Szablon sekretów CI z prefiksem export
export AWS_ACCESS_KEY_ID=AKIAIOSFODNN7EXAMPLE export AWS_SECRET_ACCESS_KEY=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY export AWS_REGION=us-east-1 export DEPLOY_ENV=production
{
"AWS_ACCESS_KEY_ID": "AKIAIOSFODNN7EXAMPLE",
"AWS_SECRET_ACCESS_KEY": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
"AWS_REGION": "us-east-1",
"DEPLOY_ENV": "production"
} Pliki .env w stylu powłoki często poprzedzają każdą linię słowem export, aby można je było załadować przez source. Parser automatycznie usuwa prefiks export i daje czyste klucze JSON.
Złożony .env: cudzysłowy, sekwencje ucieczki, wartości wieloliniowe i komentarze inline
APP_NAME=My App # unquoted value, inline comment stripped GREETING="Hello,\nWorld" # double quotes: \n becomes a real newline LITERAL='no \n escapes here' # single quotes: kept literally PRIVATE_KEY="-----BEGIN KEY----- line two line three -----END KEY-----" EMPTY=
{
"APP_NAME": "My App",
"GREETING": "Hello,\nWorld",
"LITERAL": "no \\n escapes here",
"PRIVATE_KEY": "-----BEGIN KEY-----\nline two\nline three\n-----END KEY-----",
"EMPTY": ""
} Pokazuje wszystkie przypadki brzegowe dotenv naraz: komentarze inline przy wartościach bez cudzysłowów są usuwane, wartości w cudzysłowach podwójnych przetwarzają sekwencje \n \t \r \\ \", wartości w pojedynczych cudzysłowach są zachowywane dosłownie, a wartość w podwójnych cudzysłowach może obejmować wiele linii aż do zamykającego cudzysłowu (przydatne dla kluczy PEM).
Jak używać
- 1
Wklej swój plik .env
Wprowadź lub wklej zawartość .env do pola wejściowego powyżej. Możesz też kliknąć „Wczytaj przykład”, aby wypróbować .env dla Node/Vite, plik env Docker Compose lub szablon sekretów CI.
- 2
Zobacz wynik JSON na żywo
JSON pojawia się natychmiast w panelu wynikowym. Przełącz „Wnioskuj typy”, jeśli chcesz liczby i wartości logiczne zamiast ciągów znaków, i wybierz wcięcie 2 lub 4 spacji.
- 3
Kopiuj lub pobierz
Kliknij Kopiuj, aby pobrać JSON do schowka, lub Pobierz, aby zapisać go jako plik .json — gotowy dla loadera konfiguracji, menedżera sekretów lub dowolnego narzędzia, które czyta JSON.
Częste pułapki .env
Brakujący znak = w linii
Każda linia niebędąca komentarzem i niepusta musi być parą KEY=VALUE. Linia bez znaku = nie może zostać sparsowana, a narzędzie zgłasza błąd z numerem linii. Goły klucz bez wartości należy zapisać jako KEY= (pusta wartość).
DATABASE_URL DEBUG true
DATABASE_URL= DEBUG=true
Spacje wokół znaku =
dotenv dzieli na pierwszym znaku = bez spacji wokół niego. Zapis KEY = value sprawia, że klucz to 'KEY ' (z końcową spacją), a wartość to ' value' (z wiodącą spacją). Usuń spacje lub ujmij wartość w cudzysłowy, jeśli musi zawierać wiodące białe znaki.
API_KEY = abc123
API_KEY=abc123
Wartość bez cudzysłowów pochłonięta przez komentarz inline
W wartości bez cudzysłowów spacja, po której następuje #, rozpoczyna komentarz inline, a wszystko po nim jest odrzucane. Jeśli Twoja wartość zasadnie zawiera #, ujmij ją w cudzysłowy, aby # został zachowany.
COLOR=#ff0000
COLOR="#ff0000"
Oczekiwanie sekwencji ucieczki w pojedynczych cudzysłowach
Wartości w pojedynczych cudzysłowach są dosłowne — \n pozostaje ukośnikiem odwrotnym i literą n, nie staje się znakiem nowej linii. Użyj podwójnych cudzysłowów, gdy chcesz, aby sekwencje ucieczki takie jak \n, \t czy \" były przetwarzane.
GREETING='Hello\nWorld'
GREETING="Hello\nWorld"
Niezamknięty podwójny cudzysłów w wartości wieloliniowej
Wartość w podwójnych cudzysłowach może obejmować wiele linii, ale musi być zamknięta pasującym podwójnym cudzysłowem. Jeśli zamykającego cudzysłowu brakuje, parser dalej pochłania linie aż do końca pliku. Upewnij się, że wieloliniowe sekrety takie jak klucze PEM kończą się zamykającym cudzysłowem.
KEY="-----BEGIN----- line two
KEY="-----BEGIN----- line two -----END-----"
Po cichu nadpisane zduplikowane klucze
Jeśli ten sam klucz pojawi się dwukrotnie, wygrywa ostatnia wartość, a wcześniejsza jest tracona. Narzędzie Cię ostrzega, ale najczystszym rozwiązaniem jest usunięcie duplikatu, aby zamierzona wartość była jednoznaczna.
PORT=3000 PORT=8080
PORT=8080
Typowe zastosowania
- Podawanie konfiguracji do narzędzi opartych na JSON
- Przekonwertuj plik .env na JSON, aby załadować konfigurację środowiska do narzędzi, skryptów i SDK, które czytają JSON zamiast zmiennych środowiskowych — walidatorów konfiguracji, sprawdzaczy schematów i generatorów kodu.
- Import sekretów do menedżera
- Wiele menedżerów sekretów (AWS Secrets Manager, Vault, Doppler) przyjmuje JSON do importu zbiorczego. Najpierw przekonwertuj plik .env na obiekt JSON, a potem wgraj cały zestaw w jednej operacji zamiast jednej zmiennej naraz.
- Obejrzyj długi .env w jednym spojrzeniu
- Zamień rozległy plik .env w strukturalny, wcięty JSON, abyś mógł przejrzeć klucze, wypatrzyć duplikaty dzięki ostrzeżeniu i przeanalizować konfigurację w czytelnym formacie przed zatwierdzeniem zmian.
- Generowanie typowanych obiektów konfiguracji
- Włącz „Wnioskuj typy”, aby uzyskać liczby, wartości logiczne i null w JSON, a następnie podaj go do typowanej warstwy konfiguracji lub kroku JSON na TypeScript, aby wyprowadzić interfejs dla zmiennych środowiskowych.
- Walidacja względem schematu JSON
- Przekonwertuj .env na JSON i przepuść go przez walidator schematu JSON, aby wymusić wymagane klucze, formaty wartości i dozwolone wyliczenia w CI — wyłapując źle skonfigurowane środowiska przed wdrożeniem.
- Migracja konfiguracji env_file Docker Compose
- Zamień plik env_file, który czyta Twój stos Compose, na JSON do użycia w innym narzędziu do orkiestracji, serwerze konfiguracji lub dokumentacji — bez ujawniania prawdziwych poświadczeń żadnej usłudze zewnętrznej.
Szczegóły techniczne
- Parsowanie linia po linii zgodne z dotenv
- Dane wejściowe są parsowane linia po linii. Puste linie i linie komentarzy (pierwszy znak niebędący białym znakiem #) są pomijane, opcjonalny prefiks export jest usuwany, a każda pozostała linia jest dzielona na pierwszym znaku = na klucz i wartość. Klucze są przycinane z otaczających białych znaków. Wartości podążają za regułami dotenv: podwójne cudzysłowy przetwarzają sekwencje ucieczki \n \t \r \\ \" i pozwalają na rozpiętości wieloliniowe, pojedyncze cudzysłowy są dosłowne, a wartości bez cudzysłowów usuwają końcowe białe znaki i komentarze inline.
- Opcjonalne wnioskowanie typów
- Domyślnie wszystkie wartości są emitowane jako ciągi znaków JSON, co odpowiada zachowaniu dotenv w czasie działania, gdzie wartości process.env są zawsze ciągami znaków. Po włączeniu opcji „Wnioskuj typy” wartości bez cudzysłowów są promowane: ciągi numeryczne stają się liczbami JSON, true/false stają się wartościami logicznymi, a puste lub null wartości stają się null w JSON. Wartości w cudzysłowach nigdy nie podlegają wnioskowaniu — cudzysłowy oznaczają je jako jawne ciągi znaków. Zduplikowane klucze rozwiązują się z wygraną ostatniego, z ostrzeżeniem.
- Po stronie przeglądarki — bez wysyłania, bez serwera
- Całe przetwarzanie odbywa się w całości w silniku JavaScript Twojej przeglądarki; żadne dane .env nie są w żadnym momencie przesyłane przez sieć. Nie ma zależności zewnętrznych, ponieważ parser jest napisany we własnym zakresie — biblioteka Node dotenv polega na systemie plików i nie jest bezpieczna dla przeglądarki. Dane wejściowe większe niż 200 KB przełączają się z trybu na żywo w tryb ręczny (jawne kliknięcie Konwertuj), aby przeglądarka pozostała responsywna.
Najlepsze praktyki
- Zachowaj domyślny wynik tekstowy, aby dopasować się do dotenv
- dotenv ładuje każdą wartość jako ciąg znaków, więc domyślny wynik tekstowy odzwierciedla dokładnie to, co Twoja aplikacja widzi w czasie działania. Włączaj „Wnioskuj typy” tylko wtedy, gdy odbiorca w dalszej części potoku rzeczywiście oczekuje typowanego JSON — w przeciwnym razie ryzykujesz niezgodność, w której '0' lub 'false' zachowuje się inaczej w JSON niż w Twojej działającej aplikacji.
- Ujmuj w cudzysłowy wartości zawierające # lub białe znaki
- W wartościach bez cudzysłowów spacja, po której następuje #, rozpoczyna komentarz inline, a końcowe białe znaki są przycinane. Jeśli wartość zasadnie zawiera # (kolory szesnastkowe, fragmenty adresów URL) lub znaczące spacje, ujmij ją w podwójne cudzysłowy, aby została zachowana dosłownie w JSON.
- Rozwiązuj zduplikowane klucze u źródła
- Narzędzie zachowuje ostatnią wartość i ostrzega Cię, gdy klucz jest zduplikowany, ale duplikat w pliku .env to prawie zawsze pomyłka. Usuń zbędną linię, aby nie było wątpliwości, który sekret jest aktywny.
- Nigdy nie wklejaj produkcyjnych sekretów do konwerterów po stronie serwera
- Ponieważ plik .env to w istocie lista poświadczeń, konwertuj go tylko w narzędziu, które działa w całości w przeglądarce. Ten konwerter tak działa — zweryfikuj zero żądań sieciowych w DevTools — więc jest bezpieczny dla prawdziwych sekretów, w przeciwieństwie do konwerterów po stronie serwera lub opartych na API.
- Zweryfikuj JSON przed użyciem go w dalszej części potoku
- Po konwersji przepuść JSON przez formater JSON, aby potwierdzić strukturę przed podaniem go do walidatora schematu, importu do menedżera sekretów lub loadera konfiguracji, aby strukturalna niespodzianka ujawniła się wcześnie.
Najczęściej zadawane pytania
Jak przekonwertować plik .env na JSON online?
Czy wartości są konwertowane na liczby i wartości logiczne, czy zachowywane jako ciągi znaków?
Co się stanie, jeśli ten sam klucz pojawi się dwukrotnie w moim pliku .env?
Jak obsługiwane są cudzysłowy, sekwencje ucieczki i wartości wieloliniowe?
Czy ten parser jest zgodny z biblioteką dotenv?
Czy potrafi obsłużyć zagnieżdżoną lub pogrupowaną konfigurację?
Czy moje dane .env są wysyłane na serwer?
Powiązane narzędzia
Zobacz wszystkie narzędzia →Koder i dekoder Base64
Kodowanie i formatowanie
Zakoduj i zdekoduj Base64 online za darmo. Konwersja w czasie rzeczywistym z pełną obsługą UTF-8 i emoji. 100% w przeglądarce, bez rejestracji.
Konwerter Base64 na obraz
Kodowanie i formatowanie
Zdekoduj ciąg Base64 lub data URI z powrotem na obraz w przeglądarce. Podejrzyj, odczytaj wymiary i MIME, a potem pobierz jako PNG, JPG, GIF, SVG. Bez przesyłania.
Konwerter CSV na JSON
Kodowanie i formatowanie
Konwertuj CSV na JSON w przeglądarce. RFC 4180, wnioskowanie typów, nagłówek, big-int safe. 100% prywatnie, bez wysyłki.
Konwerter HTML na Markdown
Kodowanie i formatowanie
Konwertuj HTML na czysty Markdown w przeglądarce — tabele GFM, listy zadań i linki. Wybierz nagłówki ATX/Setext oraz linki inline lub referencyjne. Idealne do migracji treści webowej lub zasilania LLM. 100% prywatnie.
Konwerter obrazu na Base64
Kodowanie i formatowanie
Konwertuj obrazy na data URI Base64 w przeglądarce — PNG, JPG, GIF, WebP, SVG, ICO. Kopiuj wynik HTML, CSS, Markdown i JSON. 100% prywatnie, bez przesyłania.
JSON Diff (Porównaj)
Kodowanie i formatowanie
Porównaj dwa pliki JSON natychmiast w przeglądarce. Podświetlanie obok siebie, wynik JSON Patch (RFC 6902), ignorowanie szumliwych pól jak znaczniki czasu i identyfikatory. 100% prywatności, bez przesyłania.