Lewati ke konten utama
FreeOnlineTools Go
Bahasa Indonesia
Bagaimana caranya

Cara Mengkodekan dan Mendekode URL: Panduan Lengkap

Oleh FreeOnlineTools Team · Diperbarui pada tanggal 2026-08-28

Jawaban Cepat

Pengkodean URL mengubah karakter tidak aman menjadi urutan %XX dengan XX adalah nilai heksadesimal byte. Spasi menjadi %20 (atau + dalam data formulir), karakter Cina menjadi rangkaian multi-byte %XX. Gunakan Encoder URL dan Decoder URL gratis kami —semua pemrosesan dilakukan secara lokal di browser Anda.

Perkenalan

Pengkodean URL, juga dikenal sebagai pengkodean persen, adalah mekanisme untuk mengkodekan karakter yang dicadangkan dan tidak aman dalam URL sehingga URL dapat ditransmisikan dengan aman melalui internet. URLs hanya dapat berisi kumpulan karakter ASCII terbatas; karakter lainnya (spasi, huruf non-ASCII, simbol) harus dikodekan persen sebagai urutan yang dimulai dengan % diikuti oleh dua digit heksadesimal yang mewakili nilai byte.

Langkah demi Langkah

  1. Identifikasi apa yang memerlukan pengkodean

    Karakter yang tidak ada dalam kumpulan yang tidak dicadangkan (A-Z, a-z, 0-9, -, ., _, ~) harus dikodekan persen. Ini termasuk spasi, pemisah kueri seperti = dan &, garis miring, dan semua karakter non-ASCII seperti China, Arab, atau emoji.

  2. Enkode URL atau string kueri

    Tempelkan teks Anda ke alat Encoder URL. Ia menggunakan encodeURIComponent() untuk menyandikan setiap karakter yang dicadangkan. Hasilnya langsung muncul di kolom keluaran.

  3. Salin hasil yang dikodekan

    Klik tombol Salin untuk menyalin string yang dikodekan persen. Anda sekarang dapat menyematkannya dengan aman di parameter kueri URL, permintaan API, atau pengiriman formulir.

  4. Decode URL yang dikodekan

    Tempelkan URL atau string kueri yang dikodekan ke alat Decoder URL. Ia menggunakan decodeURIComponent() untuk mengembalikan karakter asli. Verifikasikan keluaran yang didekodekan sesuai dengan harapan Anda.

  5. Verifikasi kasus tepi

    Periksa apakah spasi didekodekan dengan benar (%20 vs +), apakah rangkaian UTF-8 multi-byte didekode ke karakter yang tepat, dan apakah string yang sudah dikodekan tidak dikodekan ganda.

Contoh

Enkode teks dengan spasi

Masukan: Hello World

Keluaran: Hello%20World

Mengkodekan pemisah jalur

Masukan: a/b

Keluaran: a%2Fb

Mengkodekan karakter Cina (UTF-8)

Masukan: 你好

Keluaran: %E4%BD%A0%E5%A5%BD

Decode parameter kueri yang dikodekan

Masukan: key%3Dvalue%26foo%3Dbar

Keluaran: key=value&foo=bar

Masalah Umum

  • Pengkodean ganda: pengkodean string yang sudah dikodekan mengubah %20 menjadi %2520. Selalu periksa apakah input sudah dikodekan sebelum melakukan pengkodean ulang.
  • Membingungkan encodeURI dengan encodeURIComponent: encodeURI menyimpan karakter khusus seperti /, ?, & utuh untuk URLs penuh, sementara encodeURIComponent mengkodekan semuanya untuk nilai parameter kueri.
  • Penanganan ruang: %20 adalah bentuk yang dikodekan persen; + hanya valid di data isi application/x-www-form-urlencoded, bukan di jalur URL atau string kueri per RFC 3986.
  • Pengkodean lama non-UTF-8: browser modern mengkodekan sebagai UTF-8, namun sistem lama mungkin menggunakan GBK atau Latin-1, sehingga menyebabkan mojibake saat didekodekan di sisi lain.

Kiat

  • Gunakan encodeURIComponent() untuk nilai parameter kueri individual, dan encodeURI() untuk keseluruhan URLs yang sudah terbentuk dengan baik.
  • Saat membuat string kueri, enkodekan nilai tetapi bukan pemisah = atau & —kodekan setiap nilai secara terpisah lalu gabung dengan &.
  • Gunakan alat Encoder dan Decoder URL kami untuk men-debug panggilan API yang mengembalikan 400 kesalahan karena format string kueri yang salah.
  • Selalu dekode di sisi server menggunakan pengkodean karakter yang sama (UTF-8) untuk menghindari mojibake.

Alat Terkait

Panduan Terkait

Referensi