.env'den JSON'a Dönüştürücü
Bir .env dosyası yapıştırın, anında JSON alın. Sırlarınız tarayıcınızdan asla çıkmaz — %100 gizli, yükleme yok, ücretsiz dotenv ayrıştırıcı.
Seçenekler · 2 boşluk · dizeler
.env Dosyası Nedir?
Bir .env dosyası (dotenv dosyası), yapılandırmayı ve sırları kaynak kodun dışında tutmak için kullanılan, KEY=VALUE çiftlerinden oluşan düz metin bir listedir. Node.js, Vite, Next.js, Python, Ruby, Docker Compose ve hemen hemen her modern çerçevede ortam değişkenleri için fiili standarttır — dotenv kütüphanesi ve uyarlamaları dosyayı yükler ve her çifti süreç ortamına enjekte eder. Dosya genellikle veritabanı parolaları, API anahtarları, OAuth istemci sırları ve erişim token'ları içerdiğinden, neredeyse her zaman git tarafından yok sayılır ve hassas olarak ele alınır.
Bir .env dosyasını JSON'a dönüştürmek sık bir iştir: yapılandırmayı JSON okuyan bir araca beslemeniz, onu bir JSON Şemasına göre doğrulamanız, bir sır yöneticisine içe aktarmanız, türlü yapılandırma nesneleri üretmeniz veya uzun bir .env dosyasını yapılandırılmış veri olarak bir bakışta incelemeniz gerekir. Bu dönüştürücü, düz çift listesini anahtar başına bir özellik olan tek bir JSON nesnesine çevirir.
Bu araç birkaç kasıtlı karar etrafında kurulmuştur:
**1. Varsayılan olarak dizeler, talep üzerine türler.** dotenv türleri asla zorlamaz — çalışma zamanında her process.env değeri bir dizedir. Varsayılan çıktı bunu tam olarak onurlandırır, böylece JSON, uygulamanızın gerçekten gördüğü şeyle eşleşir. Türlü JSON istediğinizde, isteğe bağlı Türleri çıkar anahtarı tırnaksız sayıları, boole değerlerini ve null değerleri yükseltir; tırnaklı değerler, tırnaklar açık bir sinyal olduğundan dize olarak kalır.
**2. Sadık dotenv ayrıştırması.** Yorumlar, boş satırlar, export ön eki, tek ve çift tırnaklar, kaçış dizileri, çok satırlı çift tırnaklı değerler ve tırnaksız değerlerdeki satır içi yorumlar; hepsi dotenv kütüphanesinin işlediği şekilde işlenir — JSON'u uygulamanızın yüklediğiyle karşılaştırdığınızda sürpriz olmaz.
**3. Yinelenen anahtar güvenliği.** Bir anahtar iki kez tanımlandığında sonraki değer kazanır ve bir uyarı, hangi anahtarların yinelendiğini söyler; böylece yanlışlıkla gölgelenen bir sır fark edilmeden geçmez.
**4. %100 tarayıcı tabanlı gizlilik.** .env verileriniz tarayıcıdan asla çıkmaz. Yükleme, sunucu gidiş-dönüşü veya günlük kaydı yoktur — DevTools Ağ sekmesinde sıfır ağ isteği doğrulayabilirsiniz. Dosya esasen bir kimlik bilgileri listesi olduğundan, gerçek bir .env dosyasını çevrimiçi dönüştürmenin tek sorumlu yolu budur.
Dönüştürdükten sonra, sonucu JSON Biçimlendirici ile düzgün biçimlendirebilir veya doğrulayabilir, başka bir dizeye gömmek için JSON Kaçış ile kaçış işleyebilir veya eşlik eden JSON'dan .env'e Dönüştürücü ile ters yöne gidebilirsiniz. Yapılandırmanız bunun yerine YAML'de bulunuyorsa, YAML'den JSON'a aracını deneyin.
// 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"
// } Temel Özellikler
Sadık dotenv Ayrıştırması
Yorumları, export ön ekini, tek ve çift tırnakları, kaçış dizilerini (\n \t \r \\ \"), çok satırlı çift tırnaklı değerleri ve satır içi yorumları işler — tam olarak dotenv kütüphanesinin yaptığı şekilde.
Varsayılan Olarak Dizeler, Talep Üzerine Türler
Değerler, dotenv'in çalışma zamanı davranışıyla eşleşmesi için varsayılan olarak JSON dizeleridir. Tırnaksız sayıları, boole değerlerini ve null değerleri yükseltmek için Türleri çıkar seçeneğini açın; tırnaklı değerler her zaman dize olarak kalır.
Yinelenen Anahtar Uyarıları
Bir anahtar iki kez tanımlanırsa son değer kazanır (dotenv davranışı) ve bir uyarı her yinelenen anahtarı listeler; böylece sessizce üzerine yazılan bir sır fark edilmeden geçemez.
Canlı Dönüştürme
JSON çıktısı, siz yazarken veya yapıştırırken anında güncellenir. Büyük girişler (200 KB üzeri), tarayıcıyı yanıt verir durumda tutmak için otomatik olarak Dönüştür düğmesiyle manuel moda geçer.
2 veya 4 Boşluk Girinti
Kod tabanınızın stiline veya alt akış araçlarınıza uyması için JSON çıktısı için 2 boşluk ve 4 boşluk girinti arasında geçiş yapın.
%100 Tarayıcı Tabanlı Gizlilik
Tüm ayrıştırma tarayıcınızda yerel olarak çalışır. .env verileriniz — veritabanı parolaları, API anahtarları, token'lar — asla yüklenmez, asla günlüğe kaydedilmez ve hiçbir sunucuda saklanmaz.
Örnekler
Node / Vite .env
# 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"
} Tipik bir Node.js / Vite .env dosyası. Varsayılan olarak her değer bir JSON dizesi olur (dotenv standardı). Yorum satırları ve boş satırlar atlanır. 10 → sayı ve true → boole değeri istiyorsanız Türleri çıkar seçeneğini açın.
Docker Compose ortamı
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"
} Docker Compose yığınınızın okuduğu env_file dosyasını JSON'a dönüştürün; böylece bir betiğe, bir yapılandırma doğrulayıcıya veya bir sır yöneticisine yükleyebilirsiniz. Hiçbir şey yüklenmez — gerçek kimlik bilgileri için güvenlidir.
export ön ekli CI sırları şablonu
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"
} Kabuk tarzı .env dosyaları, source ile yüklenebilmeleri için her satırı genellikle export ile başlatır. Ayrıştırıcı export ön ekini otomatik olarak kaldırır ve size temiz JSON anahtarları verir.
Karmaşık .env: tırnaklar, kaçışlar, çok satırlı ve satır içi yorumlar
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": ""
} Tüm dotenv kenar durumlarını bir arada gösterir: tırnaksız değerlerdeki satır içi yorumlar kaldırılır, çift tırnaklı değerler \n \t \r \\ \" kaçış dizilerini işler, tek tırnaklı değerler birebir korunur ve çift tırnaklı bir değer, kapanış tırnağına kadar birden fazla satıra yayılabilir (PEM anahtarları için kullanışlıdır).
Nasıl Kullanılır
- 1
.env Dosyanızı Yapıştırın
.env içeriğinizi yukarıdaki giriş alanına girin veya yapıştırın. Ayrıca bir Node/Vite .env, bir Docker Compose env dosyası veya bir CI sırları şablonu denemek için 'Örnek yükle'ye tıklayabilirsiniz.
- 2
Canlı JSON Çıktısını Görün
JSON çıkış panelinde anında belirir. Dize yerine sayı ve boole değeri istiyorsanız 'Türleri çıkar' seçeneğini açın ve 2 veya 4 boşluklu girinti seçin.
- 3
Kopyalayın veya İndirin
JSON'u panonuza almak için Kopyala'ya veya .json dosyası olarak kaydetmek için İndir'e tıklayın — bir yapılandırma yükleyici, bir sır yöneticisi veya JSON okuyan herhangi bir araç için hazırdır.
Yaygın .env Tuzakları
Bir Satırda = İşareti Eksik
Yorum olmayan, boş olmayan her satır bir KEY=VALUE çifti olmalıdır. = işareti olmayan bir satır ayrıştırılamaz ve araç satır numarasıyla bir hata bildirir. Değeri olmayan çıplak bir anahtar KEY= (boş değer) olarak yazılmalıdır.
DATABASE_URL DEBUG true
DATABASE_URL= DEBUG=true
= İşaretinin Etrafında Boşluklar
dotenv, etrafında boşluk olmadan ilk = işaretinden böler. KEY = value yazmak, anahtarı 'KEY ' (sonunda boşlukla) ve değeri ' value' (başında boşlukla) yapar. Boşlukları kaldırın veya değer başında boşluk içermesi gerekiyorsa onu tırnak içine alın.
API_KEY = abc123
API_KEY=abc123
Satır İçi Yorumun Yuttuğu Tırnaksız Değer
Tırnaksız bir değerde, bir boşluğun ardından gelen # bir satır içi yorum başlatır ve sonrasındaki her şey düşürülür. Değeriniz meşru olarak bir # içeriyorsa, # korunsun diye değeri tırnak içine alın.
COLOR=#ff0000
COLOR="#ff0000"
Tek Tırnaklarda Kaçış Beklemek
Tek tırnaklı değerler birebirdir — \n bir ters eğik çizgi ve bir n olarak kalır, bir satır sonu olmaz. \n, \t veya \" gibi kaçış dizilerinin işlenmesini istediğinizde çift tırnak kullanın.
GREETING='Hello\nWorld'
GREETING="Hello\nWorld"
Çok Satırlı Bir Değerde Kapatılmamış Çift Tırnak
Çift tırnaklı bir değer birden fazla satıra yayılabilir, ancak eşleşen bir çift tırnakla kapatılmalıdır. Kapanış tırnağı eksikse, ayrıştırıcı dosyanın sonuna kadar satırları tüketmeye devam eder. PEM anahtarları gibi çok satırlı sırların bir kapanış tırnağıyla bittiğinden emin olun.
KEY="-----BEGIN----- line two
KEY="-----BEGIN----- line two -----END-----"
Sessizce Üzerine Yazılan Yinelenen Anahtarlar
Aynı anahtar iki kez görünürse son değer kazanır ve önceki kaybolur. Araç sizi uyarır, ancak en temiz düzeltme, amaçlanan değerin belirsiz olmaması için yinelenen anahtarı kaldırmaktır.
PORT=3000 PORT=8080
PORT=8080
Yaygın Kullanım Alanları
- Yapılandırmayı JSON Tabanlı Araçlara Besleyin
- Ortam yapılandırmasını, ortam değişkenleri yerine JSON okuyan araçlara, betiklere ve SDK'lara yüklemek için bir .env dosyasını JSON'a dönüştürün — yapılandırma doğrulayıcılar, şema denetleyicileri ve kod üreticileri.
- Sırları Bir Yöneticiye İçe Aktarın
- Birçok sır yöneticisi (AWS Secrets Manager, Vault, Doppler) toplu içe aktarma için JSON kabul eder. Önce bir .env dosyasını JSON nesnesine dönüştürün, ardından her değişkeni teker teker değil, tüm seti tek bir işlemde gönderin.
- Uzun Bir .env Dosyasını Bir Bakışta İnceleyin
- Dağınık bir .env dosyasını yapılandırılmış, girintili JSON'a çevirin; böylece anahtarları tarayabilir, uyarı aracılığıyla yinelemeleri görebilir ve değişiklikleri işlemeden önce yapılandırmayı okunabilir bir biçimde gözden geçirebilirsiniz.
- Türlü Yapılandırma Nesneleri Üretin
- JSON'da sayılar, boole değerleri ve null almak için Türleri çıkar seçeneğini etkinleştirin, ardından onu türlü bir yapılandırma katmanına veya ortam değişkenleriniz için bir arayüz türetmek üzere bir JSON'dan TypeScript'e adımına besleyin.
- Bir JSON Şemasına Göre Doğrulayın
- .env dosyasını JSON'a dönüştürün ve gerekli anahtarları, değer biçimlerini ve izin verilen enum'ları CI'da uygulamak için bir JSON Şeması doğrulayıcıdan geçirin — yanlış yapılandırılmış ortamları dağıtımdan önce yakalayın.
- Docker Compose env_file Yapılandırmasını Taşıyın
- Compose yığınınızın okuduğu env_file dosyasını, gerçek kimlik bilgilerini herhangi bir harici hizmete maruz bırakmadan başka bir orkestrasyon aracında, bir yapılandırma sunucusunda veya belgelerde kullanmak üzere JSON'a çevirin.
Teknik Ayrıntılar
- Satır Satır dotenv Uyumlu Ayrıştırma
- Giriş satır satır ayrıştırılır. Boş satırlar ve yorum satırları (ilk boşluk olmayan karakter #) atlanır, isteğe bağlı bir export ön eki kaldırılır ve kalan her satır ilk = işaretinden anahtar ve değere bölünür. Anahtarların çevreleyen boşlukları kırpılır. Değerler dotenv kurallarını izler: çift tırnaklar \n \t \r \\ \" kaçışlarını işler ve çok satırlı yayılmalara izin verir, tek tırnaklar birebirdir ve tırnaksız değerler sondaki boşlukları ve satır içi yorumları kaldırır.
- İsteğe Bağlı Tür Çıkarımı
- Varsayılan olarak tüm değerler, process.env değerlerinin her zaman dize olduğu dotenv'in çalışma zamanı davranışıyla eşleşecek şekilde JSON dizeleri olarak yayılır. Türleri çıkar etkinleştirildiğinde, tırnaksız değerler yükseltilir: sayısal dizeler JSON sayıları olur, true/false boole değeri olur ve boş veya null değerler JSON null olur. Tırnaklı değerler asla çıkarsanmaz — tırnaklar onları açık dizeler olarak işaretler. Yinelenen anahtarlar bir uyarıyla son-kazanır olarak çözülür.
- Tarayıcı Tabanlı — Yükleme Yok, Sunucu Yok
- Tüm işleme tamamen tarayıcınızın JavaScript motorunda gerçekleşir; hiçbir noktada hiçbir .env verisi ağ üzerinden iletilmez. Ayrıştırıcı şirket içinde yazıldığından harici bağımlılık yoktur — Node dotenv kütüphanesi dosya sistemine dayanır ve tarayıcı için güvenli değildir. 200 KB'den büyük girişler, tarayıcıyı yanıt verir durumda tutmak için canlı moddan manuel moda (açık bir Dönüştür tıklaması) geçer.
En İyi Uygulamalar
- dotenv ile Eşleşmesi İçin Varsayılan Dize Çıktısını Koruyun
- dotenv her değeri bir dize olarak yükler, bu nedenle varsayılan dize çıktısı, uygulamanızın çalışma zamanında gördüğü şeyi tam olarak yansıtır. Türleri çıkar seçeneğini yalnızca alt akış tüketicisi gerçekten türlü JSON beklediğinde etkinleştirin — aksi takdirde '0' veya 'false' değerinin JSON'da çalışan uygulamanızdakinden farklı davrandığı bir uyumsuzluk riskine girersiniz.
- # veya Boşluk İçeren Değerleri Tırnak İçine Alın
- Tırnaksız değerlerde bir boşluğun ardından gelen # bir satır içi yorum başlatır ve sondaki boşluklar kırpılır. Bir değer meşru olarak bir # (onaltılık renkler, parça URL'leri) veya anlamlı boşluklar içeriyorsa, JSON'da birebir korunsun diye onu çift tırnak içine alın.
- Yinelenen Anahtarları Kaynakta Çözün
- Araç son değeri tutar ve bir anahtar yinelendiğinde sizi uyarır, ancak bir .env dosyasındaki yineleme neredeyse her zaman bir hatadır. Hangi sırrın etkin olduğu konusunda belirsizlik olmaması için gereksiz satırı kaldırın.
- Üretim Sırlarını Asla Sunucu Tarafı Dönüştürücülere Yapıştırmayın
- Bir .env dosyası fiilen bir kimlik bilgileri listesi olduğundan, onu yalnızca tamamen tarayıcıda çalışan bir araçta dönüştürün. Bu dönüştürücü çalışır — DevTools'ta sıfır ağ isteği doğrulayın — bu yüzden sunucu tarafı veya API destekli dönüştürücülerin aksine gerçek sırlar için güvenlidir.
- JSON'u Alt Akışta Kullanmadan Önce Doğrulayın
- Dönüştürdükten sonra, yapısal bir sürprizin erken ortaya çıkması için onu bir şema doğrulayıcıya, bir sır yöneticisi içe aktarmasına veya bir yapılandırma yükleyiciye beslemeden önce JSON'u JSON Biçimlendirici üzerinden çalıştırarak yapıyı onaylayın.
Sıkça Sorulan Sorular
Bir .env dosyasını çevrimiçi olarak JSON'a nasıl dönüştürürüm?
Değerler sayılara ve boole değerlerine mi dönüştürülür, yoksa dize olarak mı tutulur?
.env dosyamda aynı anahtar iki kez görünürse ne olur?
Tırnaklar, kaçışlar ve çok satırlı değerler nasıl işlenir?
Bu ayrıştırıcı dotenv kütüphanesiyle tutarlı mı?
İç içe veya gruplanmış yapılandırmayı işleyebilir mi?
.env verilerim bir sunucuya gönderiliyor mu?
İlgili Araçlar
Tüm araçları görüntüleyin →Base64 Çözücü ve Kodlayıcı
Kodlama ve Biçimlendirme
Base64'ü ücretsiz çevrimiçi kodlayın ve çözün. Tam UTF-8 ve emoji desteğiyle gerçek zamanlı dönüştürme. %100 tarayıcıda — kayıt gerekmez.
Base64'ü Görsele Çevirme Aracı
Kodlama ve Biçimlendirme
Bir Base64 dizesini ya da data URI'yi tarayıcınızda görsele geri çözün. Önizleyin, boyutları ve MIME'ı okuyun, ardından PNG, JPG, GIF, SVG olarak indirin. Yükleme yok.
CSV'den JSON'a Dönüştürücü
Kodlama ve Biçimlendirme
CSV'yi tarayıcınızda JSON'a dönüştürün. RFC 4180, tür çıkarımı, başlık satırı, büyük tam sayı güvenli. %100 gizli, yükleme yok.
HTML'den Markdown'a Dönüştürücü
Kodlama ve Biçimlendirme
HTML'i tarayıcınızda temiz Markdown'a çevirin — GFM tabloları, görev listeleri ve bağlantılar. ATX/Setext başlıkları ile satır içi veya referans bağlantıları seçin. Web içeriği taşıma ya da LLM için ideal. %100 gizli.
Görseli Base64'e Çevirme Aracı
Kodlama ve Biçimlendirme
Görselleri tarayıcınızda Base64 data URI'lerine çevirin — PNG, JPG, GIF, WebP, SVG, ICO. HTML, CSS, Markdown ve JSON çıktısını kopyalayın. %100 gizli, yükleme yok.
JSON Diff Karşılaştır
Kodlama ve Biçimlendirme
Tarayıcınızda iki JSON dosyasını anında karşılaştırın. Yan yana vurgulama, RFC 6902 JSON Patch çıktısı, zaman damgaları ve kimlikler gibi gürültülü alanları yoksayma. %100 gizli, yükleme yok.