Kodlama

URL Encode/Decode

URL kodlama ve çözme — bağlantılarda ve sorgu parametrelerinde escape edilmesi gereken karakterler.

URL encoding (percent-encoding) replaces characters that aren't allowed in a URL — spaces, non-Latin letters, special characters — with %XX sequences, where XX is the hex code of the byte. This keeps links and query parameters from getting mangled in transit.

How to use it

Common uses

Things to keep in mind

Encode parameter values, not the whole URL at once — otherwise you'll also encode the separators you need (:, /, ?, &).

JavaScript's encodeURIComponent and encodeURI encode different character sets — the former is meant specifically for parameter values.

Bu araç hakkında makale: URL Encode/Decode: bağlantılarda percent-encoding

Sıkça sorulan sorular

Component ve URI kodlama arasındaki fark nedir?

Component kodlama (encodeURIComponent) neredeyse tüm ayrılmış karakterleri kaçırır, bu yüzden tek bir sorgu parametresi veya yol segmenti için uygundur. URI kodlama (encodeURI) / : ? & = gibi karakterlere dokunmaz, çünkü zaten yapısı olan tüm bir URL'yi kodlamak için tasarlanmıştır.

URL kodlama Base64 ile aynı mı?

Hayır, sık sık karıştırılırlar ama farklı tekniklerdir. URL kodlama (yüzde kodlama) güvensiz karakterleri %XX dizileriyle değiştirir ve çoğu ASCII metni okunabilir tutar; Base64 ise tüm girdiyi kompakt bir alfabeyle yeniden kodlar — URL güvenli Base64'ü, bir URL'ye ikili veri gömmek gibi farklı bir amaç için kullanırsınız.

Bu araç URL'lerimi bir sunucuya gönderiyor mu?

Hayır. Kodlama ve kod çözme tamamen tarayıcınızda gerçekleşir, bu yüzden buraya yapıştırdığınız hiçbir şey herhangi bir yere iletilmez.

Çift kodlama nedir ve nasıl fark edilir?

Bu, zaten kodlanmış bir dizenin tekrar kodlanması hatasıdır — % karakterinin kendisi %25'e dönüşür ve %20, %2520 olur. Sorunun belirtisi, çözülmüş sonuçta görülen %25XX gibi dizilerdir.

Boşluk neden bazen + olarak, bazen %20 olarak kodlanıyor?

Boşluk için + kullanımı, formların ve sorgu dizelerinin kullandığı application/x-www-form-urlencoded biçimine aittir. %20 ise RFC 3986'daki standart percent-encoding'dir ve bir URL'nin her bölümünde geçerlidir.

Makaleler: Kodlama

Base64: kodlama neden gerekli ve nasıl çalışır

Base64 ikili verileri ASCII metnine nasıl çevirir ve buna gerçekten ne zaman ihtiyaç duyulur.

Base32: Base64'ten farkı ve ne zaman daha kullanışlı

Büyük/küçük harf duyarsız Base32 alfabesi ve Base64'ten daha kullanışlı olduğu durumlar.

HTML Entities: özel karakterleri güvenle nasıl gösterirsiniz

< > & karakterlerinin neden escape edilmesi gerektiği ve bunun bozuk işaretlemeyi nasıl önlediği.

JWT: token yapısı ve bir JWT'yi "çözmek" ne anlama gelir

Bir JWT'nin header, payload ve signature bölümleri ile çözmenin imza doğrulamayla aynı şey olmadığı.

Unicode Escape: \uXXXX dizileri ne anlama gelir

JSON ve JS dizelerindeki \u0041 gibi dizilerin nereden geldiği ve ne anlama geldiği.

ROT13 ve Sezar şifresi: basit karakter değişimi

13 harflik kaydırmanın ROT13'ü neden kendi kendine ters yapan bir işlem haline getirdiği ve hâlâ neden kullanıldığı.

Punycode: uluslararasılaştırılmış alan adları DNS'te nasıl çalışır

Latin olmayan karakterler içeren bir alan adının xn-- önekli ASCII formuna nasıl dönüştüğü.

Mors alfabesi: metin nokta ve çizgilere nasıl dönüşür

Harfleri nokta ve çizgilerle kodlama prensibi ve Mors alfabesinin günümüzde nerede kullanıldığı.

Data URI: görselleri doğrudan koda ne zaman gömmeli

Bir Data URI'nin bir dosyanın içeriğini doğrudan HTML veya CSS içine nasıl gömdüğü ve ne zaman buna değdiği.

Gzip + Base64: veriyi metin olarak iletmek için sıkıştırma

Sıkıştırılmış ikili verilerin bir metin alanına konmadan önce neden ayrıca Base64 ile kodlandığı.

XML Entities: XML belgelerinde karakter escape etme

Kendileri olmadan belgenin ayrıştırma sırasında bozulduğu beş zorunlu XML entity.