Saat Anda meneruskan informasi melalui URL, string hanya boleh menggunakan karakter tertentu yang diizinkan. Karakter yang diizinkan ini mencakup karakter alfabet, angka, dan beberapa karakter khusus yang memiliki arti dalam string URL. Karakter lain yang perlu ditambahkan ke URL harus dikodekan sehingga tidak menimbulkan masalah selama perjalanan browser untuk menemukan halaman dan sumber yang Anda cari.
Mengkodekan URL
Pengkodean hanya mengambil karakter khusus dan menggantinya dengan alternatif yang disandikan. String terlihat berantakan, tetapi hasilnya mudah dibaca oleh komputer dan Anda tidak akan mengambil risiko salah arah URL.
Misalnya, menautkan ke file berjudul resume saya.pdf membutuhkan pengkodean URL untuk mengakomodasi ruang antara saya dan lanjut. Hasilnya adalah %20resume.pdf saya. Tanpa pengkodean untuk simbol spasi, browser web akan menganggap bahwa URL berakhir di akhir kata saya, dengan resume.pdf dibuang sebagai data yang berlebihan. Dalam situasi seperti itu, Anda tidak akan pernah menemukan file Anda!
Apa yang Harus Dikodekan?
Setiap karakter yang bukan karakter alfabet, angka, atau karakter khusus yang digunakan di luar konteks normalnya harus dikodekan di halaman Anda. Di bawah ini adalah tabel karakter umum dalam URL dan penyandiannya:
Pengkodean URL Karakter Cadangan
Karakter | Tujuan dalam URL | Pengkodean |
: | Protokol terpisah (http) dari alamat | %3B |
/ | Pisahkan domain dan direktori | %2F |
# | Jangkar terpisah | %23 |
? | String kueri terpisah | %3F |
& | Pisahkan elemen kueri | %24 |
@ | Pisahkan nama pengguna dan kata sandi dari domain | %40 |
% | Menunjukkan karakter yang disandikan | %25 |
+ | Menunjukkan spasi | %2B |
Tidak direkomendasikan di URL | %20 atau + |
Contoh yang disandikan ini berbeda dari yang Anda temukan Karakter khusus HTML. Misalnya, untuk menyandikan URL dengan karakter ampersand, gunakan %24. Namun, dalam HTML, gunakan salah satu dari & atau &, yang keduanya akan menulis ampersand di halaman HTML.
Skema pengkodean yang berbeda ini tidak kontradiktif seperti yang terlihat. Satu set mengatur URL sementara yang lain mengatur konten halaman yang ditunjuk oleh URL.