Codificator/Decodificator URL + Entități HTML

Codificați URL-uri, decodificați secvențe procentuale și convertiți entități HTML.

Instrument
Acțiune
Domeniu de aplicare URL
Intrare
Ieșire
Pregătit. Lipiți textul și alegeți o acțiune.

URL-ul și textul HTML sunt convertite direct în browser. Nimic nu este încărcat pe serverele BroBroGo.

Întrebări frecvente

Ar trebui să aleg componentă URL sau URL complet?

Utilizați opțiunea „Componentă” pentru valori de interogare (query), segmente de cale sau valori de formular. Utilizați „URL complet” atunci când doriți ca caractere precum : / ? & = să rămână lizibile.

Ce modificări aduce codificarea entităților HTML?

Această opțiune transformă caractere precum <, >, &, ghilimelele și textul non-ASCII în entități HTML care pot fi inserate în siguranță în textul sau atributele HTML.

De ce eșuează uneori decodificarea URL-urilor?

Secvențele de codificare procentuală (percent escapes) trebuie să fie secvențe UTF-8 complete. O secvență incompletă sau coruptă, cum ar fi %E0%A4%A, nu poate fi decodificată fără aproximări.

Funcționarea codificării și decodificării URL

Codificarea URL, cunoscută și sub numele de codificare procentuală (percent-encoding), este un mecanism utilizat pentru a converti caracterele speciale dintr-un URI (Uniform Resource Identifier) în reprezentări sigure care pot fi transmise corect prin internet. Specificațiile tehnice impun ca anumite caractere să aibă semnificații speciale în structura unui URL (cum ar fi caracterele utilizate ca delimitatori: /, ?, &, =). Atunci când aceste caractere trebuie să facă parte din datele propriu-zise transmise (de exemplu, în cadrul unei valori dintr-un parametru de interogare), ele trebuie codificate pentru a nu altera structura adresei web.

Procesul de codificare înlocuiește caracterele non-ASCII sau caracterele rezervate cu una sau mai multe secvențe de tip procent urmat de două cifre hexazecimale (de exemplu, spațiul devine %20). Decodificarea reprezintă procesul invers, prin care aceste secvențe procentuale sunt transformate înapoi în caracterele originale, lizibile pentru utilizator. Acest instrument permite realizarea ambelor operațiuni direct în browser.

Diferența dintre codificarea unei componente și a unui URL complet

Atunci când se prelucrează adrese web, este esențial să se facă distincția între structura globală a URL-ului și datele individuale incluse în acesta. Instrumentul oferă două opțiuni distincte pentru a gestiona aceste scenarii prin setarea „Domeniu de aplicare URL”:

  1. Componentă (Componentă): Această opțiune utilizează funcțiile JavaScript encodeURIComponent și decodeURIComponent. Este destinată codificării fragmentelor individuale, cum ar fi valorile parametrilor de interogare (query values), segmentele de cale (path pieces) sau valorile trimise prin formulare. În acest mod, toate caracterele speciale, inclusiv delimitatorii standard precum :, /, ?, & și =, sunt convertite în secvențe procentuale. De exemplu, textul hello world & city=上海 devine hello%20world%20%26%20city%3D%E4%B8%8A%E6%B5%B7.
  2. URL complet (URL complet): Această opțiune utilizează funcțiile encodeURI și decodeURI. Este utilizată atunci când se dorește codificarea unei adrese web întregi, păstrând intactă structura funcțională a acesteia. Caracterele cu rol de delimitator (cum ar fi :, /, ?, &, =) rămân neschimbate și lizibile, fiind codificate doar caracterele care nu sunt permise deloc într-un URL, cum ar fi spațiile sau caracterele non-ASCII (de exemplu, caracterele chirilice, chinezești sau diacriticele românești).

Escaparea și de-escaparea entităților HTML

HTML (HyperText Markup Language) utilizează anumite caractere rezervate pentru a defini structura documentelor, cel mai frecvent fiind vorba despre semnele mai mic < și mai mare > care delimitează tagurile. Dacă aceste caractere, alături de altele precum ampersand & sau ghilimelele, trebuie să apară ca text simplu într-o pagină web, ele trebuie convertite în entități HTML pentru a preveni interpretarea lor ca instrucțiuni de cod.

Escaparea entităților HTML transformă caracterele speciale și textul non-ASCII în secvențe sigure (de exemplu, < devine &lt;, > devine &gt;, iar & devine &amp;). Acest proces face ca textul să poată fi inserat în siguranță în interiorul elementelor HTML sau în atributele acestora, fără riscul de a altera redarea paginii. De-escaparea (unescaping) realizează operațiunea inversă, transformând entitățile HTML înapoi în caracterele lor originale. Atunci când este selectat modul pentru entități HTML, controlul pentru domeniul de aplicare al URL-ului este ascuns automat din interfață.

Secvențe procentuale și cerințele UTF-8

Decodificarea corectă a URL-urilor depinde în mod direct de integritatea secvențelor procentuale. Standardele moderne prevăd ca caracterele non-ASCII să fie mai întâi codificate în format UTF-8, iar fiecare octet rezultat să fie reprezentat printr-o secvență procentuală.

Dacă o secvență procentuală este incompletă sau coruptă, decodificarea nu poate fi finalizată. De exemplu, o secvență precum %E0%A4%A este incompletă și nu reprezintă un caracter UTF-8 valid. În astfel de cazuri, decodificarea va eșua, iar instrumentul va afișa mesajul de eroare specific: „Acest URL conține o secvență de codificare procentuală (percent escape) nevalidă sau incompletă.”.

Este important de subliniat că procesele de codificare și escapare oferite de acest instrument sunt operațiuni de formatare tehnică a datelor pentru conformitatea cu protocoalele web. Acestea nu trebuie confundate cu igienizarea securizată a datelor (security sanitization), care implică eliminarea activă a scripturilor malițioase sau prevenirea atacurilor de tip Cross-Site Scripting (XSS).

Utilizarea practică a instrumentului

Acest utilitar este conceput pentru dezvoltatori web, editori de conținut și personal de asistență tehnică care au nevoie să manipuleze parametri de URL sau să insereze text în siguranță în documente HTML.

Interfața permite introducerea unui text de până la 2.000.000 de caractere. Dacă această limită este depășită, se va afișa eroarea: „Textul introdus este prea lung pentru acest instrument. Păstrați-l sub {max} caractere.”.

Pentru a utiliza instrumentul:

  • Introduceți textul în câmpul de intrare. Dacă nu este introdus niciun text și se încearcă o acțiune, va apărea mesajul: „Lipiți mai întâi un text în câmpul de intrare.”.
  • Selectați modul de lucru din „Instrument” („URL” sau „Entități HTML”) și tipul de „Acțiune” („Codificare / escape” sau „Decodificare / unescape”).
  • Apăsați butonul „Convertește”. În timpul procesării, se afișează „Se convertește...”. La finalizare, se va afișa mesajul „Codificat.” sau „Decodificat.”, împreună cu statisticile privind dimensiunea textului de intrare și de ieșire.
  • Puteți folosi butonul „Utilizează rezultatul” pentru a muta textul convertit înapoi în câmpul de intrare, caz în care se afișează mesajul „Rezultatul a fost mutat în câmpul de introducere.”.
  • Butonul „Șterge” curăță ambele câmpuri, afișând mesajul „Datele de intrare și de ieșire au fost șterse.”.
  • Butonul „Exemplu” încarcă un text demonstrativ, afișând mesajul „Exemplul a fost încărcat.”.

Dacă o conversie durează prea mult, sistemul va afișa mesajul: „Conversia durează prea mult. Încercați cu un text mai scurt.”, iar pentru alte erori neprevăzute se va afișa: „Nu s-a putut converti acest text.”.

Confidențialitatea datelor

Toate conversiile de text și URL-uri sunt realizate local, direct în browserul utilizatorului. Datele introduse nu sunt încărcate pe serverele BroBroGo, asigurând procesarea locală a informațiilor.

Întrebări frecvente (FAQ)

Ar trebui să aleg componentă URL sau URL complet?

Utilizați opțiunea „Componentă” pentru valori de interogare (query), segmente de cale sau valori de formular. Utilizați „URL complet” atunci când doriți ca caractere precum : / ? & = să rămână lizibile.

Ce modificări aduce codificarea entităților HTML?

Această opțiune transformă caractere precum <, >, &, ghilimelele și textul non-ASCII în entități HTML care pot fi inserate în siguranță în textul sau atributele HTML.

De ce eșuează uneori decodificarea URL-urilor?

Secvențele de codificare procentuală (percent escapes) trebuie să fie secvențe UTF-8 complete. O secvență incompletă sau coruptă, cum ar fi %E0%A4%A, nu poate fi decodificată fără aproximări.