Asosiy qismga oʻtish

URL ni kodlash va dekodlash

URL, soʻrov qiymatlari va forma maʼlumotlarini UTF-8 ni buzmasdan foiz bilan kodlang yoki dekodlang, har bir parametr dekodlanib koʻrsatiladi; hammasi brauzeringizda ishlaydi.

Nimani kodlayapsiz?

encodeURIComponent: harflar, raqamlar va - _ . ! ~ * ' ( ) dan boshqa hamma narsani kodlaydi. Bitta parametr qiymati uchun ishlating.

Foiz bilan kodlangan
Natija yozish davomida shu yerda chiqadi.
Brauzeringizda ishlaydi · yuklanmaydiQanday ishlaydi

URL kodlovchi va dekoder: foydalanish tartibi

  1. 1

    Kodlash yoki dekodlashni tanlang

    “Kodlash” boʻsh joy va maxsus belgilarni %XX ga aylantiradi, “Dekodlash” esa %XX ni yana oʻqiladigan matnga qaytaradi.

  2. 2

    Nimani kodlayotganingizni belgilang

    Bitta parametr uchun soʻrov qiymati, toʻliq manzil uchun butun URL, boʻsh joy + boʻlishi kerak boʻlsa, forma maʼlumoti.

  3. 3

    Matn yoki havolani joylang

    Natija yozish davomida yangilanadi, toʻliq URL esa qismlari va parametrlari boʻyicha tahlil qilinadi.

  4. 4

    Natijani nusxalang

    Uni nusxalang, fayl sifatida saqlang yoki aylanma oʻgirishni tekshirish uchun yana kirishga oʻtkazing.

Cheklovlar va Pro

Bepul, roʻyxatdan oʻtishsiz, joylanadigan matn uzunligiga cheklov yoʻq; 600 000 belgidan uzun natija qisman koʻrsatiladi, lekin toʻliq nusxalanadi yoki saqlanadi.

Pro reklamani olib tashlaydi; konvertor barcha tariflarda bir xil. Pro tarifini koʻrish

URL kodlovchi va dekoder haqida

URL da faqat cheklangan ASCII belgilar boʻlishi mumkin, shuning uchun qolgan hamma narsa — boʻsh joy, urgʻuli harflar, emoji va maʼlumot sifatida ishlatilgan maxsus belgilar — har bir UTF-8 bayti uchun % va ikkita oʻn oltilik raqam bilan yoziladi. Oʻzbekcha matnda bu ayniqsa koʻp uchraydi: “oʻ” dagi ʻ belgisi %CA%BB, kirillcha “Ш” esa %D0%A8 boʻlib ketadi. Bu sahifa ikki yoʻnalishda oʻgiradi va aynan nima oʻzgarganini koʻrsatadi.

Uchta rejim kodlash amalda uchraydigan uchta joyga mos keladi. Soʻrov qiymati rejimi JavaScript dagi encodeURIComponent kabi ishlaydi va bitta parametr, yoʻl boʻlagi yoki boshqa URL ichiga joylangan qayta yoʻnaltirish manzili uchun toʻgʻri tanlov. Butun URL rejimi encodeURI kabi ishlaydi: sxema, qiya chiziqlar, soʻroq belgisi, & va = belgilariga tegmaydi, faqat manzilni buzadigan narsalarni kodlaydi. Forma maʼlumoti rejimi application/x-www-form-urlencoded qoidasiga amal qiladi: HTML formalar va URLSearchParams dagidek boʻsh joy + belgisiga aylanadi.

Toʻliq havolani joylasangiz, tahlil paneli sxema, xost, port, yoʻl va fragmentni hamda har bir soʻrov parametrini dekodlangan qiymati bilan jadvalda koʻrsatadi — reklama kuzatuv havolalari, OAuth qaytish manzillari va imzolangan URL larni oʻqishda qulay. Dekodlash buzilgan joyda toʻxtaydi va oʻrnini aytadi: ortidan ikkita oʻn oltilik raqam kelmagan yolgʻiz % yoki yaroqsiz UTF-8 baytlar, bu odatda matn eski tizimda Latin-1 bilan kodlanganini bildiradi.

Foiz kodlash shifrlash emas va hech narsani qisqartirmaydi; buning uchun havola qisqartirgichdan foydalaning. Base64 va HTML entity kodlari qolgan ikki yorliqda.

Maxfiylik

URL va matn shu sahifaning ichida kodlanadi va dekodlanadi, shuning uchun token, e-pochta manzili yoki sessiya ID si bor havolalar hech qayerga yuborilmaydi. Keyingi safar uchun lokal xotirada faqat tanlangan rejim saqlanadi, joylagan matningiz esa saqlanmaydi.

URL kodlovchi va dekoder: koʻp beriladigan savollar

encodeURI yoki encodeURIComponent — qaysi birini ishlatish kerak?
URL ga qoʻyadigan har qanday narsa uchun encodeURIComponent, yaʼni bu yerdagi soʻrov qiymati rejimini ishlating: qidiruv soʻzi, parametr qiymati yoki ichma-ich qayta yoʻnaltirish manzili. U & = ? / belgilarini kodlaydi, shunda ular URL tuzilishi deb oʻylanmaydi. encodeURI, yaʼni butun URL rejimi esa faqat tuzilishi tayyor, boʻsh joy yoki ASCII boʻlmagan belgilarni tuzatish kerak boʻlgan toʻliq manzil uchun.
Nega boʻsh joy baʼzan %20, baʼzan + boʻladi?
URL uchun belgilangan foiz kodlashda boʻsh joy %20 deb yoziladi. HTML formalar esa eskiroq application/x-www-form-urlencoded formatidan foydalanadi: unda boʻsh joy + ga, plyus belgisining oʻzi esa %2B ga aylanadi. Ikkalasi ham soʻrov satrlarida keng uchraydi. Formadan yuborilgan qiymatlarni dekodlashda forma maʼlumoti rejimini tanlang, aks holda + plyus belgisi boʻlib qoladi.
Dekodlashda “yaroqli UTF-8 emas” degani nimani bildiradi?
Zamonaviy URL larda har bir belgi UTF-8 baytlari bilan yoziladi, masalan, é — %C3%A9. Baʼzi eski tizimlar Latin-1 dan foydalangan, unda é bitta %E9 baytidir va bu ketma-ketlik UTF-8 da yaroqsiz. Xato uning oʻrnini koʻrsatadi. Manbani UTF-8 da qayta kodlang yoki faqat bir nechta belgi buzilgan boʻlsa, Latin-1 ketma-ketligini qoʻlda almashtiring.
Uzun kuzatuv havolasining parametrlarini koʻrsa boʻladimi?
Ha. Toʻliq havolani https:// bilan birga joylang, natija ostida tahlil paneli paydo boʻladi. U xost, yoʻl va fragmentni sanab, har bir soʻrov parametrini, jumladan takrorlangan kalitlarni ham dekodlangan qiymati bilan koʻrsatadi. Shunda UTM teglari, OAuth state qiymatlari va ichma-ich qayta yoʻnaltirish manzillarini birma-bir dekodlamasdan oʻqiysiz.
URL ni ikki marta kodlash muammo tugʻdiradimi?
Ha, ikki marta kodlash keng tarqalgan xato: birinchi bosqichdagi % belgisi %25 ga aylanadi, shuning uchun %20 oʻrniga %2520 hosil boʻladi va server notoʻgʻri qiymat oladi. Bir marta dekodlagandan keyin ham %XX ketma-ketliklari qolsa, matn ikki marta kodlangan. “Natijani kirishga oʻtkazish”ni bosing va asl matnni tiklash uchun yana dekodlang.

Bu vosita bilan boshqa ishlar