Ang pag-encode ay nangyayari habang nagta-type ka at nananatili sa iyong device - ang iyong teksto ay hindi kailanman ina-upload, na ginagawa itong ligtas para sa mga token, redirect URI at pribadong query string. Piliin ang Component para sa isang query value o path segment, Full URL kapag ang input ay isang buong URL na may non-ASCII na teksto, at Form para sa mga HTML form submission kung saan ang espasyo ay +.
URL Encoder at Decoder
Tumatakbo nang buo sa iyong browser - walang upload, walang sign-up.
Ano ang URL encoding?
Ang URL encoding (tinatawag ding percent-encoding) ay isinusulat muli ang mga karakter na hindi ligtas sa isang URL - mga espasyo, aksen, emoji, ampersand - bilang % na sinusundan ng kanilang mga UTF-8 byte value. Ini-encode ng tool na ito ang teksto sa URL-safe na anyo at dine-decode ito pabalik sa iyong browser, na may tatlong mode para sa isang value, isang buong URL, o isang HTML form query string.
Paano gamitin
- 1Pumili ng direksyon. Piliin ang Encode para gawing URL-safe ang teksto, o Decode para gawing teksto muli ang percent-encoded na input.
- 2Pumili ng mode. Ang Component ay nagko-encode ng isang value (pinaka-karaniwang kaso), ang Full URL ay pinapanatili ang URL structure, at ang Form ay gumagamit ng + para sa espasyo.
- 3I-paste ang iyong input. Mag-type o mag-paste sa input box - ang resulta ay naa-update nang live sa panel sa tabi nito.
- 4Kopyahin ang resulta. Kopyahin ang output at i-paste kung saan mo kailangan. Ang mga invalid na percent escape ay nagpapakita ng malinaw na mensahe sa halip na garbled na teksto.
Para kanino ito
- Pagbuo ng query string - gawing
caf%C3%A9%20%26%20coang pangalan nacafé & copara ligtas sa URL. - Pagbabasa ng server log - i-paste ang isang request line at i-decode ito para makita ang nababasang query at path.
- OAuth at mga redirect - i-encode ang
redirect_uriostatevalue para hindi ito mabago sa pagdaan sa provider. - HTML form data - i-decode ang
application/x-www-form-urlencodedna body kung saan ang mga espasyo ay kinakatawan ng+.
FAQ
Libre ba ang URL encoder na ito?
Oo - ito ay ganap na libre, walang sign-up at walang limitasyon sa paggamit. Ang encoding at decoding ay parehong gumagana sa iyong browser.
Ina-upload ba ang aking data kahit saan?
Hindi. Ang iyong teksto ay pinoproseso nang lokal sa iyong browser at hindi kailanman ipinapadala sa isang server, kaya ligtas ito para sa mga token, OAuth redirect value at pribadong query string.
Ano ang pagkakaiba ng Component, Full URL at Form mode?
Ang Component (encodeURIComponent) ay nagko-encode ng isang query value o path segment - percent-encode rin nito ang <code>& = ? /</code>. Ang Full URL (encodeURI) ay pinapanatili ang mga structural na karakter na iyon tulad ng dati, na gusto mo para sa isang buong URL. Ang Form ay katulad ng Component ngunit ang espasyo ay <code>+</code> sa halip na <code>%20</code> - ang HTML <code>application/x-www-form-urlencoded</code> na panuntunan.
Kaya ba nitong hawakan ang emoji, aksen at non-Latin na teksto?
Oo. Ang mga karakter na wala sa ASCII ay naka-encode bilang kanilang mga UTF-8 byte - ang <code>é</code> ay nagiging <code>%C3%A9</code>, ang <code>🌍</code> ay nagiging <code>%F0%9F%8C%8D</code> - at dini-decode pabalik sa orihinal na teksto.
Bakit minsan %20 at minsan + ang espasyo?
Ang <code>%20</code> ay ang universal na percent-encoding para sa espasyo. Ang plus form (<code>+</code>) ay ginagamit lamang sa loob ng <code>application/x-www-form-urlencoded</code> na data - iyon ay, sa body ng isang HTML form POST o sa query string ng isang form submission. Gamitin ang Form mode para sa mga iyon; gamitin ang Component o Full URL sa lahat ng ibang lugar.
Bakit nakakakuha ako ng "Invalid URL encoding"?
Ang input ay naglalaman ng <code>%</code> na hindi sinusundan ng dalawang hex digit (halimbawa <code>%G1</code> o nag-iisang <code>%</code> sa dulo), o ang percent-byte ay hindi bumubuo ng valid na UTF-8. Ayusin ang sirang sequence o i-paste muli ang orihinal na encoded na string.
Maaari ko bang i-encode ang isang string na naka-encode na?
Maaari, ngunit ang bawat <code>%</code> sa input ay magiging <code>%25</code>, kaya ang resulta ay doubly encoded. I-decode muna kung ang iyong input ay percent-encoded na - o gamitin ang Decode na direksyon.