URL dekoderi
URL dekoderi faizlə kodlaşdırılmış URL mətnini ilkin sətir formasına qaytaran pulsuz alətdir.
URL dekodlaşdırması nə edir?
URL dekodlaşdırması boşluqları, durğu işarələrini və digər baytları URL-lər, eləcə də faizlə kodlaşdırmadan istifadə edən başqa müəyyən sintaksislər vasitəsilə ötürmək üçün tətbiq olunan əvəzləməni geri çevirir. Faizlə kodlaşdırmada bayt faiz işarəsi və onun ardınca gələn iki onaltılıq rəqəmlə göstərilir. Forma tipli URL kodlaşdırmasında boşluq üçün + işarəsi də işlədilir. Məsələn, boşluq %20, ampersand isə %26 kimi yazıla bilər.
Sadə bir giriş və nəticə nümunəsi:
Kodlaşdırılmış giriş: red%20%26%20blue
Dekodlaşdırılmış nəticə: red & blue
Bu kodlaşdırma ona görə mövcuddur ki, bəzi simvollar URL-də struktur funksiyası daşıyır. Sual işarəsi URL-in sorğu hissəsini ayırır, forma tipli sorğu məlumatlarında isə adi ampersand adətən sahələri bir-birindən ayırır. Həmin simvollar kodlaşdırıldıqda tətbiq onları struktur elementi kimi deyil, məlumat kimi ötürə bilir.
URL kodlaşdırması şifrələmə deyil və məlumatı məxfi saxlamır. Kodlaşdırılmış dəyəri oxuya bilən hər kəs onu dekodlaşdıra bilər. Faizlə kodlaşdırılmış parolları, giriş tokenlərini və ya şəxsi məlumatları qorunan məlumat hesab etmə.
URL dekoderindən necə istifadə edim?
Kodlaşdırılmış mətni daxil et və ya yapışdır, emal et, sonra bərpa olunmuş dəyəri URL dekodlaşdırılmış nəticə sahəsində oxu. Alət PHP-nin urldecode funksiyasından istifadə edir. Buna görə etibarlı %HH ardıcıllıqlarını çevirir, üstəgəl işarəsini isə boşluq kimi qəbul edir.
- Sorğu parametrinin dəyəri kimi kodlaşdırılmış komponenti kopyala.
- Dırnaq işarələri həqiqətən dəyərin bir hissəsi deyilsə, onları əlavə etmədən URL ilə kodlaşdırılmış dəyəri daxil et.
- URL girişini emal et və URL dekodlaşdırılmış nəticəsini yoxla.
- Nəticədə hələ də %2F və ya %20 kimi ardıcıllıqlar varsa, onu yenidən dekodlaşdırmazdan əvvəl mənbənin bir neçə dəfə kodlaşdırılıb-kodlaşdırılmadığını yoxla.
Emal serverdə aparılır. Daxil etdiyin məlumat HTTPS üzərindən serverə göndərilir və saxlanmır, lakin emal zamanı cihazını tərk edir. Server tərəfində emal həmin məlumat üçün uyğun deyilsə, məxfi məlumatları bu URL dekoderinə yapışdırma.
URL kodlaşdırması harada istifadə olunur?
URL kodlaşdırmasına ən çox sorğu sətirlərində, forma göndərişlərində və keçidlərə yerləşdirilmiş dəyərlərdə rast gəlinir. Məlumatın məhdud mətn formatından keçməli olduğu daha az nəzərə çarpan yerlərdə də istifadə olunur.
- Sorğu sətirləri: "tea & cake" axtarışı q=tea+%26+cake kimi görünə bilər.
- Data URI-ləri: mətn məlumatları media növündən sonra faizlə kodlaşdırıla bilər, lakin Base64 də geniş istifadə olunan başqa təqdimat formasıdır.
- E-poçt keçidləri: mailto keçidində mövzu və ya mətn parametrlərindəki boşluqlar, sətirsonları və durğu işarələri kodlaşdırıla bilər. E-poçt mesajının daxilində işlədilən MIME ötürmə kodlaşdırmaları isə ayrıca formatlardır.
- JSON faydalı yükləri: JSON öz əvəzləmə qaydalarından istifadə edir, lakin JSON sətrində ayrıca dekodlaşdırılmalı olan, əvvəlcədən kodlaşdırılmış URL və ya sorğu dəyəri ola bilər.
- Beynəlmiləlləşdirilmiş domenlər: ASCII-yə daxil olmayan domen etiketlərində adətən faizlə kodlaşdırma əvəzinə Punycode işlədilir. Yol və sorğu komponentlərində isə faizlə kodlaşdırılmış UTF-8 baytları yenə ola bilər.
Kodlaşdırılmış mətn xn-- ilə başlayan domen etiketidirsə, IDN Punycode çeviricisindən istifadə et. URL dekoderi Punycode çevirməsi üçün deyil, faizlə kodlaşdırılmış URL komponentləri üçün nəzərdə tutulub.
URL dekodlaşdırmasına dair praktiki nümunələr
Aşağıdakı nümunələrdə geniş yayılmış URL ilə kodlaşdırılmış girişlər və onlara uyğun dekodlaşdırılmış mətn göstərilir.
- hello%20world nəticədə hello world olur.
- name=Tom+Jones nəticədə name=Tom Jones olur.
- fish%26chips nəticədə fish&chips olur.
- Baytlar UTF-8 mətnini ifadə etdikdə %C2%A3 nəticədə £ olur.
- UTF-8 kimi şərh edildikdə %E6%9D%B1%E4%BA%AC nəticədə 東京 olur.
- 100%25 nəticədə 100% olur.
Adi hərflər, rəqəmlər və kodlaşdırılmamış durğu işarələri ümumiyyətlə daxil edildiyi kimi qalır. Boş giriş URL dekodlaşdırılmış sahəsində boş nəticə yaradır. Çox uzun girişlər üçün də eyni dekodlaşdırma qaydaları tətbiq olunur, lakin brauzerlər, serverlər və qəbul edən sistemlər sorğu və ya URL uzunluğuna öz məhdudiyyətlərini qoya bilər.
Vurğulu və latın qrafikasına aid olmayan simvollar adətən UTF-8 baytlarının ardıcıllığı kimi kodlaşdırılır və hər bayt ayrıca yazılır. İlkin sistem başqa simvol kodlaşdırmasından istifadə edibsə, dekodlaşdırılmış baytlar əvəzedici simvollar və ya mənasız görünən mətn kimi göstərilə bilər.
URL dekodlaşdırması niyə alınmır və ya anlaşılmaz nəticə verir?
Girişdə natamam faiz ardıcıllıqları olduqda, məlumat bir neçə dəfə kodlaşdırıldıqda, yanlış simvol dəsti ilə şərh edildikdə və ya ümumiyyətlə URL ilə kodlaşdırılmış məlumat olmadıqda nəticə dəyişməz və ya gözlənilməz ola bilər. PHP-nin urldecode funksiyası səhv qurulmuş faiz ardıcıllıqlarını dəyişmədən saxlayır. İki dəfə kodlaşdırılmış giriş isə bir dekodlaşdırma keçidindən sonra aralıq nəticə verir. Məlumatı təkrar-təkrar dekodlaşdırmazdan əvvəl ilkin mənbəni yoxla.
- İki dəfə kodlaşdırılmış giriş: %2520 bir dəfə dekodlaşdırıldıqda %20 olur və yalnız ikinci dekodlaşdırma keçidindən sonra boşluğa çevrilir. Yalnız əlavə kodlaşdırma qatının olduğunu bildikdə yenidən dekodlaşdır.
- Natamam faiz ardıcıllığı: hər kodlaşdırılmış bayt üçün iki onaltılıq rəqəm olmalıdır. Sonda qalan % və ya %2 kimi dəyər səhv qurulub və tam kodlaşdırılmış baytı ifadə edə bilməz. Buna görə PHP-nin urldecode funksiyası onu dəyişmədən saxlayır.
- Yanlış simvol kodlaşdırması: faizlə dekodlaşdırma baytları bərpa edir. Məsələn, ISO-8859-1 baytlarını UTF-8 kimi şərh etmək, faiz ardıcıllıqları etibarlı olsa belə, anlaşılmaz nəticə yarada bilər.
- Mətn əvəzinə binar məlumat: dekodlaşdırılmış baytlar şəkil, sıxılmış fayl və ya başqa binar məzmun ola bilər. Belə nəticənin oxunaqlı mətn kimi görünməsi gözlənilmir.
- Yanlış kodlaşdırma ailəsi: URL ilə dekodlaşdırılmış nəticə daha sonra Base64 dekoderinə ötürülərsə, standart və URL üçün təhlükəsiz əlifbaların fərqli olması, = doldurma işarələrinin çatışmaması və ya girişin zədələnməsi səbəbindən dekoder işləməyə bilər. URL faiz kodlaşdırmasında doldurma yoxdur və Base64 əlifbasından istifadə edilmir. URL dekodlaşdırması həmin Base64 problemlərini nə yoxlayır, nə də düzəldir.
Adi üstəgəl işarələrinə diqqət et. Forma tipli URL kodlaşdırmasında + boşluq deməkdir. Həqiqi üstəgəl işarəsi dekodlaşdırmadan əvvəl adətən %2B kimi kodlaşdırılmalıdır.
Tez-tez verilən suallar
Tam URL-i dekodlaşdırım, yoxsa yalnız bir hissəsini?
Mümkün olduqda ayrıca yol seqmentini və ya sorğu parametrinin dəyərini dekodlaşdır. Tam URL-in dekodlaşdırılması %26, %3F və ya %2F kimi kodlaşdırılmış rezerv simvolları ayırıcılara çevirə və URL-in təhlil qaydasını dəyişə bilər.
URL dekoderi kiçik hərflə yazılmış onaltılıq kodları tanıyır?
Bəli. Faiz ardıcıllıqlarındakı onaltılıq rəqəmlərdə böyük və kiçik hərf fərqi yoxdur. Buna görə %2f və %2F eyni baytı ifadə edir. Böyük və kiçik hərflərin qarışıq olduğu ardıcıllıqlar da etibarlıdır.
Alət eyni dəyəri təkrar-təkrar dekodlaşdırır?
Xeyr. urldecode funksiyasının hər çağırışı bir dekodlaşdırma keçidi həyata keçirir. %252F nəticədə %2F olarsa, əyri xətt almaq üçün daha bir keçid lazımdır. Lakin təkrar dekodlaşdırma adi faiz ardıcıllığını ehtiva etməli olan məlumatı dəyişə bilər.
URL dekodlaşdırması zədələnmiş mətni bərpa edə bilər?
Xeyr. O, etibarlı faiz kodlaşdırmasını geri çevirə bilər, lakin çatışmayan onaltılıq rəqəmləri bərpa edə və ya ilkin simvol dəstini dəqiq müəyyənləşdirə bilməz. Dekodlaşdırılmış baytlar düzgün görünmürsə, mənbə sistemini, HTTP başlıqlarını və ya sənədləri yoxla.
xn-- ilə başlayan dəyərlə nə edim?
Onu adi faizlə kodlaşdırılmış mətn deyil, Punycode domen etiketi kimi qəbul et. IDN Punycode çeviricisindən istifadə et, sonra alınan domeni diqqətlə yoxla. Görünüşcə oxşar Unicode simvolları fərqli yazı sistemlərinə aid ola bilər.
Oxşar alətlər
Populyar alətlər
Mətnin ölçüsünü baytlarda (B), kilobaytlarda (KB) və ya meqabaytlarda (MB) əldə edin.
Ping alətimizlə istənilən vebsaytın, serverin və ya portun vəziyyətini və cavab müddətini tez və səmərəli şəkildə yoxlayın.
Digily Link-in IP axtarış aləti istənilən IP ünvanı haqqında ətraflı məlumat təqdim edir. Hərtərəfli IP məlumatı əldə etmək üçün bu pulsuz onlayn xidmətdən istifadə edin.
WhatsApp linkinizi dərhal və pulsuz yaradın. Fərdi mesaj əlavə edin və hesab açmadan və kod yazmadan bir kliklə söhbətə başlayın.