TL;DR: Gunakan alat URL Encoder dan Decoder online gratis untuk encode URL online (percent encoding) atau decode URL secara cepat dan aman di browser. Semua pemrosesan string dieksekusi 100% Client-Side tanpa pernah dikirimkan ke server.
Ikuti panduan mudah melakukan encode url online dan pemecahan percent encoding berikut:
%20 atau %26) menjadi karakter teks biasa.
%XX) agar aman ditransmisikan melalui protokol HTTP/HTTPS.URL (*Uniform Resource Locator*) dirancang untuk dikirim melalui internet hanya dengan kumpulan karakter ASCII terbatas. Ketika sebuah alamat web mengandung karakter di luar himpunan ASCII terlindung (seperti spasi, simbol dan &, tanda tanya ?, atau abjad non-Latin), peramban web dan server memerlukan mekanisme khusus agar karakter tersebut tidak memicu kesalahan parsing URL. Mekanisme inilah yang dikenal sebagai **URL Encoding** atau **Percent Encoding**.
Fungsi utama dari percent encoding adalah menjamin bahwa setiap parameter query string yang dikirimkan dari formulir HTML atau aplikasi frontend ke server backend (REST API) tetap utuh tanpa merusak struktur URL utama. Sebagai contoh, jika kata kunci pencarian Anda mengandung karakter & (misal: "Kopi & Teh"), tanpa encode URL online, server akan keliru menafsirkan tanda & tersebut sebagai pemisah parameter query baru.
Spesifikasi RFC 3986 membagi himpunan karakter dalam URL menjadi dua kategori utama:
-), garis bawah (_), titik (.), dan tilde (~). Karakter ini tidak pernah di-encode.:, /, ?, #, [, ], @, !, $, &, ', (, ), *, +, ,, ;, dan =. Jika simbol-simbol ini digunakan sebagai bagian dari nilai variabel data, maka wajib dikonversi ke format %XX.% disusul nilai heksadesimal 2 digit dari kode ASCII byte tersebut (contoh: spasi dikonversi menjadi %20).Berikut adalah daftar pemetaan simbol khusus yang paling sering ditemui dalam proses encode url online beserta nilai persen-kode resminya:
| Karakter Mentah | Deskripsi Simbol | Hasil Percent Encoding (%XX) |
|---|---|---|
| Spasi ( ) | Space bar | %20 (atau +) |
| ! | Exclamation mark | %21 |
| " | Double quote | %22 |
| # | Hash / Fragment identifier | %23 |
| $ | Dollar sign | %24 |
| & | Ampersand (pemisah parameter) | %26 |
| + | Plus sign | %2B |
| / | Forward slash (path separator) | %2F |
| ? | Question mark (query prefix) | %3F |
Dalam pemrograman JavaScript, terdapat dua fungsi bawaan utama untuk menangani percent encoding:
Digunakan untuk meng-encode seluruh alamat URL tanpa merusak karakter struktur protokol (seperti http://, /, ?, &, =).
const url = "https://infokoding.com/search?q=belajar php";
console.log(encodeURI(url));
// Result: "https://infokoding.com/search?q=belajar%20php"
Digunakan untuk meng-encode nilai parameter individual agar seluruh karakter reserved (termasuk /, ?, &) aman dikirim sebagai query value.
const param = "Kopi & Teh/Gula";
console.log(encodeURIComponent(param));
// Result: "Kopi%20%26%20Teh%2FGula"
Berikut contoh praktis penggunaan URL encoder online dalam skenario pengembangan web sehari-hari:
// Parameter Pesan Mentah:
Halo, saya tertarik dengan artikel: https://infokoding.com/tools
// Hasil URL Encoded:
https://wa.me/628123456789?text=Halo%2C%20saya%20tertarik%20dengan%20artikel%3A%20https%3A%2F%2Finfokoding.com%2Ftools
// Request Query Parameters:
search = "PHP & Node.js"
// Endpoint API Final:
GET /api/v1/courses?search=PHP%20%26%20Node.js
Tidak ada perbedaan mendasar. Percent encoding adalah nama teknis standar resmi (RFC 3986) untuk proses pengodean karakter khusus URL menjadi format %XX, sedangkan encode URL online adalah istilah umum yang sering digunakan pengguna internet untuk alat pemrosesan ini.
Karakter %20 adalah representasi standar percent encoding untuk spasi menurut RFC 3986. Sedangkan simbol + adalah konvensi lama pengodean formulir HTML (application/x-www-form-urlencoded). Keduanya sama-sama valid dan dapat dipahami oleh peramban modern.
Gunakan encodeURI() jika Anda meng-encode seluruh string URL lengkap (agar struktur domain & path tidak rusak). Gunakan encodeURIComponent() jika Anda hanya meng-encode nilai parameter query string individual.
Sangat aman. Seluruh manipulasi string URL dilakukan 100% langsung di browser Anda menggunakan JavaScript murni (Client-Side). Data masukan tidak pernah dikirimkan atau disimpan di server kami.