URL կոդավորիչ/վերծանիչ + HTML Entities

Կոդավորեք URL-ները, վերծանեք տոկոսային կոդավորումները և էկրանավորեք HTML entities-ը:

Գործիք
Գործողություն
URL տիրույթ (scope)
Մուտք
Ելք
Պատրաստ է: Տեղադրեք տեքստը և ընտրեք գործողությունը:

Ձեր URL և HTML տեքստը փոխարկվում է ձեր բրաուզերում: Ոչինչ չի վերբեռնվում BroBroGo:

ՀՏՀ

Պե՞տք է ընտրեմ URL component, թե՞ full URL:

Օգտագործեք Component տարբերակը հարցումների արժեքների, ուղու մասերի կամ ձևանմուշների արժեքների համար: Օգտագործեք Full URL տարբերակը, երբ ցանկանում եք պահպանել այնպիսի նիշեր, ինչպիսիք են : / ? & = ընթեռնելի վիճակում:

Ի՞նչ է փոխում HTML entities էկրանավորումը:

Այն փոխակերպում է այնպիսի նիշեր, ինչպիսիք են <, >, &, չակերտները և ոչ ASCII տեքստը, հատուկ կոդերի (entities), որոնք կարող են անվտանգ տեղադրվել HTML տեքստի կամ ատրիբուտների մեջ:

Ինչո՞ւ է URL-ի վերծանումը երբեմն ձախողվում:

Տոկոսային կոդավորումները (percent escapes) պետք է լինեն ամբողջական UTF-8 հաջորդականություններ: Կոտրված հաջորդականությունը, օրինակ՝ %E0%A4%A, հնարավոր չէ վերծանել առանց ենթադրությունների:

URL կոդավորման և վերծանման նպատակն ու գործառույթը

URL կոդավորումը (հայտնի է նաև որպես տոկոսային կոդավորում կամ percent-encoding) անհրաժեշտ մեխանիզմ է համացանցում տեղեկատվության անվտանգ և անխափան փոխանցման համար: Քանի որ URL հասցեները կարող են պարունակել միայն սահմանափակ թվով նիշեր US-ASCII նիշերի բազմությունից, ցանկացած այլ հատուկ նիշ կամ ոչ ASCII սիմվոլ պետք է փոխարկվի հատուկ ձևաչափի:

Այս գործընթացի ժամանակ ոչ թույլատրելի նիշերը փոխարինվում են տոկոսային նշանով (%), որին հաջորդում է տվյալ նիշի UTF-8 կոդավորման երկու տասնվեցական թվանշանը: Օրինակ, բացատը փոխարկվում է %20-ի, իսկ հարցական նշանը կամ ամպերսանդը ստանում են իրենց համապատասխան տոկոսային արժեքները: Վերծանման (decoding) գործընթացը կատարում է հակառակ գործողությունը՝ տոկոսային կոդավորմամբ տեքստը վերածելով մարդու համար ընթեռնելի սկզբնական տեսքի:

Տարբերությունը URL Component-ի և Full URL-ի միջև

URL հասցեների հետ աշխատելիս կարևոր է հստակ տարբերակել, թե տեքստի որ մասն է ենթարկվում կոդավորման: Այս գործիքն առաջարկում է երկու տարբեր ռեժիմներ՝

  • Component (տիրույթ): Այս տարբերակն օգտագործում է JavaScript-ի encodeURIComponent և decodeURIComponent ֆունկցիաները: Այն նախատեսված է URL-ի առանձին մասերի, օրինակ՝ հարցումների արժեքների (query values), ուղու առանձին հատվածների (path pieces) կամ ձևանմուշների արժեքների (form values) կոդավորման համար: Այս ռեժիմում կոդավորվում են նաև այնպիսի նիշեր, ինչպիսիք են :, /, ?, &, =, որոնք սովորաբար ծառայում են որպես URL-ի կառուցվածքային բաժանարարներ:
  • Full URL (տիրույթ): Այս տարբերակն օգտագործում է encodeURI և decodeURI ֆունկցիաները: Այն կիրառվում է ամբողջական հասցեների դեպքում, երբ անհրաժեշտ է պահպանել URL-ի հիմնական կառուցվածքը: Այս դեպքում վերոնշյալ կառուցվածքային նիշերը (:, /, ?, &, =) մնում են անփոփոխ և ընթեռնելի, որպեսզի հասցեն պահպանի իր ֆունկցիոնալությունը:

HTML Entities էկրանավորում և ապակոդավորում

HTML entities (սիմվոլների էությունների) էկրանավորումը (escaping) ծառայում է տեքստը HTML փաստաթղթերում անվտանգ տեղադրելու համար: Երբ տեքստը պարունակում է նիշեր, որոնք HTML-ում ունեն շարահյուսական նշանակություն, դրանք կարող են խաթարել էջի կառուցվածքը:

Էկրանավորման գործընթացը փոխակերպում է հետևյալ նիշերը հատուկ կոդերի՝

  • < նիշը դառնում է &lt;
  • > նիշը դառնում է &gt;
  • & նիշը դառնում է &amp;
  • Չակերտները (" և ') և ոչ ASCII տեքստը նույնպես փոխարկվում են համապատասխան entities-ի:

Ապակոդավորումը (unescaping) կատարում է հակառակ գործողությունը՝ վերականգնելով սկզբնական նիշերը: Սա թույլ է տալիս ծրագրավորողներին, բովանդակության խմբագիրներին և աջակցման անձնակազմին անվտանգ կերպով ներդնել ցանկացած տեքստ HTML կոդի կամ ատրիբուտների մեջ:

Տոկոսային կոդավորման կանոններ և սխալներ

URL-ների վերծանման ժամանակ տոկոսային կոդավորումները պետք է ներկայացնեն ամբողջական և վավեր UTF-8 հաջորդականություններ: Եթե մուտքագրված տեքստը պարունակում է թերի կամ կոտրված հաջորդականություն, ապա վերծանումն անհնար է դառնում:

Օրինակ, եթե փորձեք վերծանել %E0%A4%A կոտրված հաջորդականությունը, համակարգը ցույց կտա հետևյալ սխալը՝ «Այս URL տեքստն ունի կոտրված տոկոսային կոդավորում»:

Կարևոր է նաև տարբերակել կոդավորումը/էկրանավորումը անվտանգության սանիտարացումից (security sanitization): Կոդավորումը միայն ձևաչափում է տվյալները համապատասխան միջավայրում (URL կամ HTML) ճիշտ արտապատկերման համար, սակայն այն չի փոխարինում վնասակար կոդերի զտման կամ սանիտարացման գործընթացներին:

Գործիքի կիրառման կանոններ և սահմանափակումներ

Այս գործիքն աշխատում է որոշակի տեխնիկական կանոններով և սահմանափակումներով՝

  • Մուտքային տվյալների չափը: Մուտքագրվող տեքստի առավելագույն չափը սահմանափակված է 2,000,000 նիշով: Եթե տեքստը գերազանցում է այս սահմանաչափը, կհայտնվի հետևյալ հաղորդագրությունը՝ «Այս տեքստը չափազանց մեծ է այս գործիքի համար: Այն պետք է լինի {max} նիշից կարճ:»:
  • Դատարկ մուտքագրում: Եթե փորձեք կատարել փոխարկում առանց տեքստ տեղադրելու, կցուցադրվի «Նախ տեղադրեք որևէ տեքստ:» հաղորդագրությունը:
  • Ժամանակի սահմանափակում: Եթե փոխարկման գործընթացը չափազանց երկար է տևում, համակարգը կցուցադրի հետևյալ նախազգուշացումը՝ «Այս փոխարկումը չափազանց երկար է տևում: Փորձեք ավելի փոքր տեքստով:»:
  • Այլ սխալներ: Ցանկացած այլ անհայտ պատճառով ձախողման դեպքում կհայտնվի «Չհաջողվեց փոխարկել այս տեքստը:» հաղորդագրությունը:

Գործիքի կառավարման վահանակում HTML entities ռեժիմն ընտրելիս URL տիրույթի (scope) կառավարման կոճակները ավտոմատ կերպով թաքցվում են, քանի որ դրանք վերաբերում են միայն URL-ների մշակմանը:

Գաղտնիություն և տվյալների մշակում

Ձեր տվյալների գաղտնիությունն ամբողջությամբ պահպանվում է: Ձեր ներկայացրած URL և HTML տեքստերը փոխարկվում են անմիջապես ձեր բրաուզերում: Ոչ մի տվյալ չի ուղարկվում կամ վերբեռնվում BroBroGo սերվերներին:

Հաճախ տրվող հարցեր (FAQ)

Պե՞տք է ընտրեմ URL component, թե՞ full URL:
Օգտագործեք Component տարբերակը հարցումների արժեքների, ուղու մասերի կամ ձևանմուշների արժեքների համար: Օգտագործեք Full URL տարբերակը, երբ ցանկանում եք պահպանել այնպիսի նիշեր, ինչպիսիք են: /? & = ընթեռնելի վիճակում:

Ի՞նչ է փոխում HTML entities էկրանավորումը:
Այն փոխակերպում է այնպիսի նիշեր, ինչպիսիք են <, >, &, չակերտները և ոչ ASCII տեքստը, հատուկ կոդերի (entities), որոնք կարող են անվտանգ տեղադրվել HTML տեքստի կամ ատրիբուտների մեջ:

Ինչո՞ւ է URL-ի վերծանումը երբեմն ձախողվում:
Տոկոսային կոդավորումները (percent escapes) պետք է լինեն ամբողջական UTF-8 հաջորդականություններ: Կոտրված հաջորդականությունը, օրինակ՝ %E0%A4%A, հնարավոր չէ վերծանել առանց ենթադրությունների: