Query String Builder
key/value satırları ekle; doğru URL-encoded query string çıkar. Dizi (a[]=1) ve braket'siz tekrarlayan anahtarları destekler.
Sonucu görmek için yukarıya giriş yapın.
Bu ne işe yarar?
Bir query string sadece ?, = ve & ile yapıştırılmış key/value çiftlerinin bir listesidir, ama elle doğru yazmak zahmetlidir: boşluklar %20 olur (veya +, duruma bağlı), her değer percent-encoded olur ve dizilerin en az üç rakip geleneği vardır. Bu araç istediğin anahtar ve değerleri yazmana, tekrarlanmasını istediklerin için "multi"yi işaretlemene izin verir ve ? sonrası yapıştırmaya hazır doğru kodlanmış string üretir.
Ne zaman kullanılır
- Boşluk, aksan veya noktalama içeren birkaç parametreli bir API URL'i hazırlama.
- Kodlanmış değerlerde yazım hatası olmadan bir takip linki (UTM tag'leri) oluşturma.
- E-posta, sohbet veya sosyal üzerinden round-trip yapması gereken bir derin link veya paylaşım URL'i oluşturma.
- Bir API için doğru array notasyonunu doğrulama —
a[]=1,a=1&a=2veyaa=1,2— her birini deneyerek.
Sık yapılan hatalar
- Array gelenekleri standartlaştırılmamıştır. PHP ve Rails
a[]=1&a[]=2kullanır; Python'unrequests'i varsayılan olarak tekrarlanana=1&a=2'a sahiptir; ASP.NET sıklıkla virgül kullanır. API'nin beklediği şeyle eşleş. +vs%20.application/x-www-form-urlencodedboşluklar için+kullanır; URI query string'leri kesinlikle%20kullanır. Çoğu sunucu ikisini de kabul eder, ama bazıları etmez — API'nin belgelediğini seç.- Boş değerler eksik anahtarlardan farklıdır.
?a="a boş string'dir" demektir;a'yı atlamak "değer verilmedi" demektir. Bazı API'ler ikisini farklı ele alır. - Rezerve karakter etkileşimi. Değerler içindeki
=,&,#,?kodlanır; anahtar/değerlerdeki literal sürümler parametre veya tüm sorguyu sonlandırır. - Sıra önemli olabilir. Bazı imzalı URL şemaları (S3, Stripe webhook'ları, OAuth 1.0) imzalamadan önce parametrelerin belirli bir sırada olmasını gerektirir. Araç satır sıranı korur.
- Uzunluk sınırları. Tarayıcılar ve sunucular query-string uzunluğunu yaklaşık 2–8 KB'da tepe yapar. Bir query parametresine JSON tıkıştırmak bir kokudur.
- Query string'e sırlar koyma. Sunucu loglarında, tarayıcı geçmişinde ve Referer header'larında görünürler. Bunun yerine istek gövdesini veya Authorization header'ı kullan.