Cara kerja penguraian URL
Parser berjalan berdasarkan standar WHATWG URL, algoritma yang sama digunakan peramban untuk setiap href. Kami menyerahkan string ke konstruktor URL bawaan dan membaca setiap komponen sebagai properti.
- Validasi masukan. String kosong memunculkan pemberitahuan masukan kosong. Selain itu, teks diproses melalui
new URL(text); TypeError berarti string bukan URL absolut yang valid. - Baca komponen struktural. Kami membaca
protocol,username,password,host,hostname,port,pathname,search,hash, danorigindari objek URL. Masing-masing ditampilkan dalam baris tersendiri agar Anda bisa menyalinnya secara terpisah. - Telusuri query string. Kami mengiterasi
url.searchParams.entries()dan menampilkan satu baris tabel per kunci. Nilai mentah ditampilkan berdampingan dengandecodeURIComponent(value)sehingga payload berenkode persen (spasi, tanda plus, Unicode) dapat dibaca dengan jelas. - Bangun ulang sesuai kebutuhan. Edit sel mana pun, hapus baris, atau tambah parameter baru, lalu klik Bangun URL. Alat ini merekonstruksi objek URL baru dari pengeditan Anda dan menulis hasilnya kembali ke kotak masukan.
- Mode langsung. Aktifkan mode langsung dan setiap penekanan tombol akan mengurai ulang URL dengan debounce 150 md. Berguna saat Anda menempel fragmen dari log dan menginginkan umpan balik langsung.
Mengapa mengurai URL di peramban
- Tidak ada yang keluar dari tab. URL membawa token, ID sesi, state OAuth, dan parameter kueri bertanda tangan yang tidak ingin Anda simpan di layanan pihak ketiga. Parser ini menggunakan algoritma URL yang sama yang sudah dijalankan peramban Anda secara lokal — tidak ada unggahan, tidak ada panggilan jaringan.
- Cocok dengan yang dilihat kode Anda. Node.js, Deno, peramban modern, dan Cloudflare Workers semuanya menggunakan implementasi WHATWG URL. Memeriksa URL di sini memberi Anda pemisahan komponen yang sama seperti panggilan
new URL(input)di produksi. - Membaca query string secara manusiawi. Nilai mentah dan terdekode ditampilkan berdampingan, sehingga pasangan
q=hello%20worldmenampilkan baik byte wire maupun teks yang terbacahello worlddalam satu pandang. Tidak perlu mendekode URL secara manual. - Pengeditan bolak-balik. Hapus parameter pelacak, perbaiki typo di path, ubah port — lalu bangun ulang URL. Output diproses kembali melalui konstruktor URL sehingga apa pun yang tidak valid akan terdeteksi sebelum Anda menyalinnya.
Aplikasi umum
Penguraian URL muncul dalam pekerjaan pengembang, keamanan, dan analitik sehari-hari setiap kali sebuah URL lebih dari sekadar tautan.
- Men-debug endpoint API: konfirmasi base URL, path, dan parameter kueri sebelum mengirim permintaan curl atau Postman.
- Audit parameter pelacakan: daftarkan setiap UTM, gclid, fbclid, atau kunci kampanye pada URL landing page dan tentukan mana yang perlu dipertahankan.
- Memvalidasi tautan afiliasi dan mitra: tempel deeplink, konfirmasi host tujuan dan target redirect yang tertanam sebelum dipublikasikan.
Contoh langkah demi langkah
Tempel https://example.com/search?q=hello%20world&lang=en ke dalam masukan. Protokol terbaca https:, hostname terbaca example.com, pathname terbaca /search, dan search terbaca ?q=hello%20world&lang=en. Tabel kueri menampilkan dua baris: q dengan nilai mentah hello%20world dan nilai terdekode hello world, lalu lang dengan nilai mentah dan terdekode en. Klik Hapus pada baris lang, lalu Bangun URL — masukan diperbarui menjadi https://example.com/search?q=hello%20world.
FAQ
Apa itu parser URL?
Parser URL mengambil string URL dan mengurainya menjadi komponen bernama: protokol (https), userinfo (nama pengguna, kata sandi), host (hostname ditambah port opsional), path, query string, dan fragmen. Parser juga mendekode setiap parameter kueri sehingga nilai berenkode persen (seperti %20 untuk spasi) dapat dibaca. Parser di sini menggunakan standar WHATWG URL, yang sama digunakan peramban Anda untuk memuat halaman.
Apa perbedaan antara host dan hostname?
Hostname hanya berisi domain (atau alamat IP) — untuk example.com:8080 hostname-nya adalah example.com. Host adalah hostname ditambah port ketika port non-default tersedia, sehingga URL yang sama memiliki host example.com:8080. Untuk URL pada port default (443 untuk https, 80 untuk http), host dan hostname identik.
Apakah dekoding dilakukan secara otomatis?
Komponen struktural (protokol, hostname, port, pathname) dibaca langsung dari objek URL tanpa dekoding tambahan — konstruktor URL sudah menormalisasinya. Nilai kueri ditampilkan dua kali: string berenkode persen mentah seperti yang muncul di search, dan nilai terdekode yang dihasilkan oleh decodeURIComponent. Dengan begitu Anda dapat menyalin bentuk mana pun yang dibutuhkan alat hilir Anda.
Bisakah saya mengedit dan membangun ulang URL?
Ya. Setiap sel bagian dan setiap sel parameter kueri dapat diedit. Tambah atau hapus baris kueri dengan tombol Tambah dan Hapus, lalu klik Bangun URL dari bagian-bagian. Alat ini memproses pengeditan Anda kembali melalui konstruktor URL dan menulis hasilnya ke masukan — jika pengeditan menghasilkan URL tidak valid, Anda mendapatkan pesan kesalahan yang sama seperti dari new URL() di kode Anda sendiri.
Penguraian URL adalah salah satu pekerjaan kecil yang dilakukan setiap pengembang web setiap minggu. Melakukannya di peramban, dengan algoritma yang sama digunakan kode produksi, menjaga pekerjaan tetap cepat dan data tetap di mesin Anda.