URI vs URL: Perbedaan, Penggunaan, dan Contohnya
URI (Uniform Resource Identifier) dan URL (Uniform Resource Locator) terkadang memang bisa digunakan bergantian, tapi keduanya tidaklah sama. Ada beberapa perbedaan antara URI vs URL yang sebenarnya cukup signifikan.
Dengan mengetahui perbedaan URL dan URI, developer bisa merencanakan proses pengembangan websitenya secara lebih efektif. Misalnya, proses desain REST API jadi lebih mudah karena URL atau URI sama-sama berfungsi untuk mengidentifikasi setiap resource di web, meskipun strukturnya berbeda.
Di artikel ini, kami akan membahas lebih lanjut perbedaan URI vs URL serta strukturnya dalam penjelasan yang mudah dipahami. Kami juga akan membahas kasus penggunaan URI dan URL, serta kelebihan dan kekurangannya. Yuk, baca sampai selesai!
Apa Itu URI?
Uniform Resource Identifier atau URI adalah string karakter yang secara umum mengidentifikasi berbagai resource web menggunakan nama, lokasi, atau nama dan lokasi resource tersebut. Uniform Resource Locator (URL) dan Uniform Resource Name (URN) termasuk dalam jenis URI.
Perbedaan URI dan URL
Mari lihat tabel perbandingan di bawah ini untuk lebih memahami perbedaan URI vs URL lebih lanjut.
URI | URL |
URI adalah singkatan dari Uniform Resource Identifier. | URL merupakan singkatan dari Uniform Resource Locator. |
URI adalah superset dari URN dan URL. | URL merupakan subset dari URI. |
URI mengidentifikasi resource dan membedakan setiap resource berdasarkan nama, lokasi, atau keduanya. | URL mengidentifikasi alamat web atau lokasi resource tertentu. |
URI berisi komponen seperti skema, authority, path (jalur), dan query. | URL memiliki komponen yang mirip dengan URI, tapi authority URL terdiri dari nama domain dan port. |
Contoh URI adalah ISBN 0-476-35557-4. | Contoh URL yaitu https://hostinger.com. |
URI biasanya digunakan dalam XML, file library tag, dan file lainnya, seperti JSTL dan XSTL. | URL utamanya berfungsi untuk mencari halaman web di internet. |
Skema URI bisa berupa protokol, spesifikasi, atau penunjukan seperti HTTP, file, atau data. | Skema URL merupakan protokol, seperti HTTP dan HTTPS. |
Kapan Harus Menggunakan URI?
Uniform Resource Identifier (URI) adalah serangkaian karakter yang digunakan untuk mengidentifikasi atau menamai resource di internet. Metode ini umum digunakan untuk mengidentifikasi dan menentukan alamat resource, seperti halaman web, gambar, video, dan file, melalui protokol seperti HTTP dan FTP.
Setelah membahas perbedaan URI vs URL, kami akan menjelaskan 2 jenis URI secara mendetail, yaitu URN dan URL.
Uniform Resource Names (URN)
URN adalah pengidentifikasi (identifier) tetap dan tidak terkait lokasi, yang berfungsi untuk mengidentifikasi resource secara permanen. Artinya, resource tetap valid meskipun datanya dipindahkan ke lokasi lain.
Nah, dalam hal ini, URN menggunakan skemanya untuk membedakan setiap resource. Contohnya, urn:isbn:0405999832 akan mengidentifikasi buku berdasarkan nomor ISBN-nya.
Setiap URN setidaknya terdiri dari 3 komponen:
- URN – setiap URN menggunakan awalan urn: sebagai spesifikasi skemanya.
- NID – merupakan pengidentifikasi namespace yang harus terdaftar di Internet Assigned Numbers Authority (IANA). NID bisa berisi huruf, angka, atau tanda hubung yang diikuti oleh titik dua.
- NSS – ini adalah string khusus namespace yang mengidentifikasi resource internet. NSS bisa berisi kode ASCII, angka, tanda baca, dan karakter khusus.
Uniform Resource Locator (URL)
URL memberikan metode untuk menunjukkan lokasi fisik suatu resource, dengan penjelasan mengenai mekanisme akses utama atau lokasi resource tersebut di jaringan. URL bisa menunjukkan lokasi halaman web, video, gambar, atau dokumen apa pun yang dipublikasikan secara online.
Tidak seperti URN, pengidentifikasi resource internet ini tidak selalu sama atau terkait dengan lokasi tertentu. Sebab, URL menentukan path ke lokasi resource, yang bisa berubah seiring waktu. Selain itu, URL tidak mengikuti skema URN.
Perbedaan antara URN dan URL yaitu, URN hanya menentukan nama resource, sedangkan URL memerlukan teknik atau protokol akses untuk mendapatkan lokasi resource.
Singkatnya, semua URL merupakan URI, tapi tidak semua URI adalah URL.
Syntax URI
Syntax atau sintaksis URI menjelaskan strukturnya agar program bisa memahaminya. Berikut syntax umum URI:
scheme:[//authority]path[?query][#fragment]
Nah, berikut penjelasan elemen sintaksis URI di atas:
Scheme (Skema)
Skema atau scheme URI adalah komponen pertama URI yang menjelaskan sistem penanganannya. Terkadang, scheme URI merupakan protokol yang digunakan untuk mengakses resource. Sementara itu, teknik lain mungkin tidak menetapkan protokol apa pun.
Misalnya, skema about: digunakan di web browser, di mana resource dibuat di klien dan tidak terkait dengan protokol tertentu.
Skema bisa berisi kombinasi huruf, angka, tanda tambah, titik, atau tanda hubung apa pun yang diikuti oleh titik dua. Skema URI yang paling umum di antaranya adalah HTTP, HTTPS, FTP, mailto, dan file.
Misalnya, kalau contoh URI adalah file:website.com/pathtofile/intro.pdf, berarti nama skemanya adalah file.
Authority Component (Komponen Otoritas)
Komponen ini bersifat opsional, diawali dengan dua garis miring dan diakhiri dengan satu garis miring, tanda tanya, atau tanda pagar. Ada 3 sub-komponen yang membentuknya:
- Userinfo – berisi username dan password yang dipisahkan oleh titik dua.
- Host – terdiri dari alamat IP atau nama yang terdaftar. Alamat IP harus dimasukkan ke dalam tanda kurung.
- Port – protokol yang digunakan untuk menghubungkan server. Ini adalah sub-komponen opsional yang diikuti oleh titik dua.
Misalnya, authority component dari URI file:website.com/pathtofile/intro.pdf adalah website.com/.
Path (Jalur)
Path atau jalur berisi urutan segmen data yang menunjukkan lokasi resource dalam struktur direktori. Jalur harus kosong atau dipisahkan oleh garis miring. Contohnya, telnet://192.0.2.16:80/ atau foo://info.example.com?fred adalah URI yang valid dengan jalur kosong karena tidak ada petunjuk lokasi resource tertentu.
Query Component (Komponen Kueri)
Query merupakan komponen yang bersifat opsional, berisi string query data non-hierarkis. Query seringnya berupa string pasangan key=value. Komponen ini diawali dengan tanda tanya.
Misalnya, kalau contoh URI adalah https://example.org/test/test1?search=test-question#part2, berarti komponen kuerinya adalah search=test-question.
Fragment Component (Komponen Fragmen)
Komponen opsional ini mencakup pengidentifikasi fragmen yang memberikan arah ke resource sekunder. Resource sekunder merupakan bagian lain dari resource utama. Fragmen diawali dengan tanda pagar dan diakhiri dengan bagian akhir URI.
Misalnya, komponen fragmen dari https://example.org/test/test1?search=test-question#part2 adalah part2.
Contoh Penggunaan URI
Berikut adalah contoh penggunaan URI:
Karya Audiovisual
International Standard Audiovisual Number (ISAN) adalah nomor kode seri yang digunakan untuk mengidentifikasi karya dan versi audiovisual, seperti film, program televisi, atau film dokumenter. URI bisa mengidentifikasi ISAN dengan menggunakan skema urn: tanpa memerlukan protokol atau cara untuk mengaksesnya.
Misalnya, urn:isan:0000-0004-87D7-0000-Q-0000-0000-6 merujuk pada film Avengers: Endgame. URI ini menggunakan nomor audiovisual untuk mengidentifikasi resource tanpa mengungkapkan lokasinya kepada pengguna.
Nomor Telepon
URI bisa mengidentifikasi resource menggunakan string dial, termasuk NTP (Network Termination Point) dengan informasi perutean panggilan. Skema tel: hanya merupakan GUID (Globally Unique Identifier) dan tidak merujuk ke perangkat fisik apa pun.
Sebagai contoh, tel:+1-816-555-6666 menggambarkan GUID sebagai nomor telepon standar di AS.
Akses Jarak Jauh
Telnet adalah protokol jaringan yang memanfaatkan URI untuk menentukan akses ke komputer jarak jauh atau host melalui internet. Sebagai contoh, telnet://192.0.2.16:80/ terhubung ke 192.0.2.16 pada port 80.
Telnet biasanya digunakan untuk menguji atau memecahkan masalah web server atau mail dari jarak jauh.
Kapan Harus Menggunakan URL?
Uniform Resource Locator (URL) menentukan cara untuk mengakses suatu resource di internet dengan menjelaskan mekanisme akses utamanya, biasanya lokasi jaringan. URL bisa mencakup protokol (seperti HTTP atau FTP) dan alamat resource.
Menggunakan URL, Anda bisa menemukan semua jenis konten di internet, seperti halaman web, gambar, dan video. Apabila menyertakan kata kunci ke dalam URL, Anda juga bisa meningkatkan visibilitasnya di halaman hasil mesin pencarian, yang turut memaksimalkan strategi SEO website Anda.
Syntax URL
Setiap URL harus mengikuti syntax URI yang memiliki struktur serupa dengan URI. Di bawah ini adalah contoh syntax URL:
https://www.example.com/forum/questions/?tag=networking&order=newest#top
URL di atas bisa dibagi menjadi komponen-komponen berikut:
Scheme (Skema)
Bagian pertama syntax URL berupa protokol yang digunakan untuk mengambil resource. Skema URL menyediakan jenis aplikasi yang digunakan perangkat Anda untuk membuka URL. Misalnya, FaceTime menggunakan skema URL facetime:// untuk melakukan panggilan.
Protokol lain yang paling sering digunakan untuk scheme URL meliputi:
- Hypertext transfer protocol (HTTP) – dengan protokol ini, pengguna bisa mengakses data dari halaman web menggunakan link hypertext.
- Hypertext transfer protocol secure (HTTPS) – melindungi transmisi data antara browser pengguna dan website.
- File transfer protocol (FTP) – digunakan untuk transfer file di antara perangkat yang berbeda melalui jaringan.
Selanjutnya, beberapa protokol URL menggunakan link mailto untuk mengidentifikasi alamat email atau JDBC untuk menentukan akses database berdasarkan kebutuhan pengguna.
Authority (Otoritas)
Komponen ini diawali dengan dua garis miring, serta berisi 2 sub-komponen yaitu nama domain dan port yang merupakan resource yang akan diakses.
Nama domain adalah nama resource yang terdaftar, seperti hostinger.co.id atau google.com.
Port adalah nomor spesifik yang mengidentifikasi layanan web mana yang Anda minta di web server. Misalnya, nomor port untuk URL HTTP adalah 80 dan untuk URL HTTPS adalah 443. Tapi, kalau web server menggunakan protokol standar seperti HTTP atau HTTPS, port biasanya dihilangkan dari URL.
Path (Jalur)
Elemen ini mengidentifikasi lokasi spesifik halaman web, postingan, atau file lain yang ingin diakses pengguna dalam nama domain. Path juga berisi ekstensi file aset, seperti gambar dan dokumen.
Namun, tidak semua URL menunjukkan komponen path. Di sejumlah web server modern, Anda mungkin tidak melihat komponen path karena bisa dihilangkan untuk mempersingkat URL.
Beberapa contoh path adalah …/software/htp/index.html atau …/forum/question/.
Query String (String Kueri)
String ini mengirimkan data tentang resource di web server dan diawali dengan tanda tanya. Biasanya, string ini berisi pasangan kunci (key) dan nilai (value) yang dipisahkan oleh tanda ampersan (&).
Contohnya seperti ini: ?tag=networking&order=newest.
Query string menyimpan data karena protokol HTTP bersifat stateless. Artinya, setiap permintaan bersifat independen dan tidak terkait dengan permintaan sebelumnya. Akibatnya, koneksi antara browser dan web server akan otomatis ditutup setelah permintaan klien berakhir.
Selain itu, string kueri dikenal sebagai parameter kueri URL yang bisa digunakan untuk tujuan tertentu, seperti hasil pencarian untuk halaman web. Ini akan membantu pengguna menelusuri konten dari suatu resource. Misalnya, pengguna bisa dengan mudah menemukan informasi tentang produk di toko online.
Fragment Identifier (Pengidentifikasi Fragmen)
Fragment identifier atau anchor biasanya muncul di akhir URL dan diawali dengan tanda pagar. Komponen ini bersifat opsional, berfungsi untuk mengarahkan web browser ke resource sekunder. Anchor merujuk pada bagian tertentu dalam halaman web.
Di halaman HTML, browser akan langsung menuju bagian tertentu yang diberi tag dengan fragmen.
Misalnya, kalau URL-nya adalah https://example.com/results.html#intro, URL ini akan langsung membuka intro yang diberi tag pada halaman bernama results.html.
Contoh Penggunaan URL
Berikut adalah contoh kasus penggunaan URL:
Alamat Email
URL bisa menentukan alamat email menggunakan skema mailto: seperti mailto:abc@example.com. Alamat ini menyediakan hyperlink untuk mengirim email secara langsung dari halaman HTML.
Halaman Web
URL yang paling umum digunakan untuk menentukan alamat web. Sering disebut sebagai URL absolut, formatnya mencakup protokol, nama domain, dan path.
Sebagai contoh, https://www.example.com/news/business/ menyatakan protokol, nama domain, dan path direktori. URL ini secara langsung mengarahkan pengguna ke bagian website tertentu.
Pengalihan (Redirect)
Mengarahkan resource yang sudah tidak relevan ke lokasi baru juga merupakan contoh umum penggunaan URL, terutama saat memindahkan halaman web.
Misalnya, ketika mengubah alamat website dari https://www.blog.example.com ke https://www.example.com/blog, Anda bisa menerapkan redirect 301. Dengan demikian, pengunjung tidak akan mendapatkan kode error status HTTP, seperti halaman error 404.
Halaman Internal
URL terkadang tidak menggunakan protokol dan nama domain, hanya menyertakan path. URL ini menautkan file tertentu dalam domain yang sama, yang sering disebut sebagai URL relatif.
Sebagai contoh, URL relatif dari https://www.example.com/news/business/ adalah /news/business/.
Kesimpulan
Nah, sekarang Anda sudah tahu apa saja yang membedakan URI vs URL. Penting untuk memahami perbedaan URL dan URI serta fungsinya, khususnya bagi Anda yang memiliki website.
Misalnya, Anda bisa membuat REST API dengan struktur URL atau URI yang bisa diprediksi dan hierarkis untuk meningkatkan performa REST API.
Uniform Resource Identifier atau URI adalah string karakter yang umumnya mengidentifikasi resource melalui nama, lokasi, atau nama dan lokasinya di internet. Selain itu, URI bisa membedakan jenis file dan resource lainnya.
Sementara itu, URL atau Uniform Resource Locator adalah string karakter yang menunjukkan alamat resource dan cara mengaksesnya di halaman web. Karena merupakan bagian dari URI, URL memiliki struktur yang serupa dengan URI.
Semoga tutorial ini membantu Anda memahami perbedaan URI vs URL dan kapan saat yang tepat untuk menggunakannya, ya. Kalau ada pertanyaan atau saran, silakan sampaikan di kolom komentar di bawah ini!
Tanya Jawab (FAQ) Perbedaan URI dan URL
Bagian ini akan menjawab beberapa pertanyaan umum tentang perbedaan URI dan URL\
Apa Contoh Perbedaan URI vs URL?
Contoh URI adalah https://www.example.com/index.html#date, yang mengidentifikasi resource tertentu dengan pengenal fragmen #date. Di sisi lain, URL yang menunjukkan lokasi resource adalah https://www.example.com/index.html.
Apa Hubungan URI dan URL?
URL adalah jenis URI yang lebih spesifik. URI mencakup identifier yang lebih lengkap, termasuk URL dan URN. Baik URL maupun URI berfungsi untuk mengidentifikasi resource. Perbedaannya adalah, URL menentukan lokasi tepat suatu resource di internet untuk akses langsung, sedangkan URN menyediakan pengenal yang tidak bergantung pada lokasi.
Komentar
November 14 2022
Sangat betmanfaat tulisannya#5.0#
January 19 2023
Waw mantap nih