Skip to content

emka.web.id

menulis pengetahuan – merekam peradaban

Menu
  • Home
  • Tutorial
  • Search
Menu

Cara Menangani Kesalahan String Kueri di JavaScript

Posted on March 20, 2023

string
Query adalah cara untuk meneruskan data antara berbagai halaman atau komponen aplikasi web. Mereka sering digunakan untuk meneruskan parameter ke server atau untuk menyimpan data dalam riwayat browser. Namun, string kueri juga bisa menjadi sumber kesalahan dan kerentanan keamanan jika tidak ditangani dengan benar.
Advertisement
Pada artikel ini, kita akan membahas cara menangani kesalahan string kueri di JavaScript.
1. Periksa Parameter yang Hilang

Salah satu kesalahan string kueri yang paling umum adalah parameter yang hilang. Hal ini terjadi saat parameter yang diperlukan tidak ada dalam string kueri, yang menyebabkan kesalahan saat kode mencoba mengakses parameter tersebut. Untuk menangani kesalahan ini, Anda harus memeriksa apakah parameter yang diperlukan ada di string kueri sebelum mencoba menggunakannya. Anda dapat melakukannya dengan menggunakan metode indexOf() atau ekspresi reguler untuk mencari parameter dalam string kueri.

Example:

const queryString = window.location.search;
const urlParams = new URLSearchParams(queryString);

if (!urlParams.has(`userId`)) {
console.error(`Parameter userId tidak ada`);
}123456constqueryString=window.location.search;consturlParams=newURLSearchParams(queryString); if(!urlParams.has(`userId`)){  console.error(`Missing userId parameter`);}

Pada contoh di atas, kita memeriksa apakah parameter userId ada di string kueri. Jika tidak ada, kami mencatat pesan kesalahan ke console.
2. Validasi Input

Kesalahan string kueri umum lainnya adalah input yang tidak valid. Hal ini dapat terjadi saat pengguna memasukkan karakter atau nilai yang tidak valid dalam string kueri, seperti karakter khusus atau serangan injeksi SQL. Untuk menangani kesalahan ini, Anda harus memvalidasi input sebelum menggunakannya di code.

Example:

const queryString = window.location.search;
const urlParams = new URLSearchParams(queryString);
const userId = urlParams.get(`userId`);

jika (!/^[0-9]+$/.test(userId)) {
console.error(`parameter userId tidak valid`);
}1234567constqueryString=window.location.search;consturlParams=newURLSearchParams(queryString);constuserId=urlParams.get(`userId`); if(!/^[0-9]+$/.test(userId)){  console.error(`Invalid userId parameter`);}

Dalam contoh di atas, kami menggunakan ekspresi reguler untuk memvalidasi parameter userId. Kami sedang memeriksa apakah parameter hanya berisi angka dan tidak ada karakter lain. Jika berisi karakter lain, kami mencatat pesan kesalahan ke console.
3. Bersihkan Masukan

Cara lain untuk menangani kesalahan string kueri adalah dengan membersihkan masukan. Sanitasi berarti menghapus atau keluar dari karakter yang dapat menyebabkan kesalahan atau kerentanan keamanan, seperti tag HTML atau karakter khusus. Anda dapat menggunakan pustaka seperti DOMPurify atau validator.js untuk membersihkan input.

Example:

import DOMPurify from `dompurify`;
const queryString = jendela.lokasi.pencarian;
const urlParams = new URLSearchParams(queryString);
pesan const = urlParams.get(`pesan`);

const sanitizedMessage = DOMPurify.sanitize(pesan);

console.log(sanitizedMessage);12345678import DOMPurify from`dompurify`;constqueryString=window.location.search;consturlParams=newURLSearchParams(queryString);constmessage=urlParams.get(`message`); constsanitizedMessage=DOMPurify.sanitize(pesan); console.log(sanitizedMessage);

Dalam contoh di atas, kami menggunakan DOMPurify untuk membersihkan parameter pesan. Kami menghapus semua tag HTML atau karakter khusus yang dapat menyebabkan kerentanan keamanan.
4. Gunakan Blok Coba-Tangkap

Terakhir, Anda bisa menggunakan blok coba-tangkap untuk menangani kesalahan lain yang mungkin terjadi saat bekerja dengan string kueri. Ini dapat mencakup error seperti JSON yang tidak valid atau nilai yang tidak diharapkan. Blok try-catch memungkinkan Anda menangkap kesalahan ini dan menanganinya dengan baik, tanpa merusak aplikasi Anda.

Example:

try {
const queryString = jendela.lokasi.pencarian;
const urlParams = new URLSearchParams(queryString);
data const = JSON.parse(urlParams.get(`data`));

console.log(data);
} tangkap (kesalahan) {
console.error(`Kesalahan mengurai data JSON`);
}123456789coba{  constqueryString=window.location.search; consturlParams=newURLSearchParams(queryString); constdata=JSON.parse(urlParams.get(`data`)); console.log(data);}catch(error){  console.error(`Error parsing JSON data`);}

Pada contoh di atas, kami menggunakan blok try-catch untuk menangkap error yang mungkin terjadi saat mengurai data JSON dari parameter datanya. Jika terjadi kesalahan, kami mencatat pesan kesalahan ke console.
Conclusion

Query string adalah alat yang berguna untuk mengirimkan data antara berbagai komponen aplikasi web. Namun, mereka juga bisa menjadi sumber kesalahan dan kerentanan keamanan jika tidak ditangani dengan benar. Dengan mengikuti tips dan contoh

Referensi tecadmin.com

Terbaru

  • Cek HP Anak, Apakah Ada Video Viral Cukur Kumis Bawah
  • Jika ATM Terpelanting, Apakah Saldo Aman?
  • Inilah 5 Rekomendasi Smartwatch Terbaik di Bawah Rp1 Jutaan
  • Siapa Daud Tony yang Ramal Jatuhnya Saham & Harga Emas-Perak?
  • Berapa Cuan Dari 1.000 Tayangan Reels Facebook Pro?
  • Apakah Jika Ganti Baterai HP, Data akan Hilang?
  • Apa itu Game Sakura School Simulator Solwa?
  • Hasil Benchmark Xiaomi Pad 8 Global Bocor! Siap-siap Masuk Indonesia Nih
  • KAGET! Ressa Rizky Rossano Akui Sudah Nikah & Punya Anak
  • Inilah Kronologi Ledakan Bom Rakitan SMPN 3 Sungai Raya, Kubu Raya Kalbar
  • Cara Mengatasi Error 208 BCA Mobile
  • Hapus Sekarang! Inilah Hornet, App LGBTQ Tembus Indonesia, Hati-hati
  • Berapa Lama Sih Ngecas HP 33 Watt? Ini Dia Penjelasannya!
  • Cara Cek Saldo Hana Bank Lewat SMS
  • Update Sistem Google Februari 2026: Apa yang Baru dan Perlu Kalian Tahu?
  • Membership FF Bulanan & Mingguan: Berapa DM yang Harus Kalian Siapkan?
  • Maksimal Ngecas HP Berapa Kali Sehari? Boleh 2 Kali Nggak, Sih?
  • Cara Mengatasi Error “Try Again, Open in Another App”
  • Sideload Android: Cara Pasang APK Tanpa Google Play Store (Panduan Lengkap 2026)
  • iPhone Jadi Kamera Vintage Modular? Proyek Kickstarter Ini Bikin Kagum!
  • Cara Mengatasi Video Nest Cam Bermasalah dan Video Hilang
  • iTunes Masih Jadi Rajanya Music? Ini Faktanya!
  • Google Home Smart Button Makin Canggih: Kini Otomatisasi Lebih Fleksibel!
  • F1: The Movie Raih Grammy! Tak Terduga, Kalahkan Bintang Country Ternama
  • Blokir Situs Judi Online: Lindungi Diri & Keluarga dari Dampak Negatif
  • Belanda Larang Anak di Bawah 16 Tahun Gunakan Media Sosial: Ini Detailnya!
  • Gemini Live Mendapat Desain Ulang ‘Floating UI’ yang Super Keren!
  • Galaxy S26 Kehilangan Magnet Qi2? Kebocoran Terbaru Bikin Penasaran!
  • DCT Coin: Crypto Legitim atau Penipuan? Bedah Tuntas, Harga & Fakta Penting!
  • Apple Rilis Update Terbaru untuk iOS, macOS, watchOS & Lainnya!
  • Arch Linux February ISO Released with Kernel Updates and Security Fixes
  • Fish Shell 4.4 Released: Enhanced Vi Mode & New Themes Explained
  • How to Create Local User Accounts in Windows 11 Without an Online Account 2026
  • How to Game on an ARM-Based Computer/Arduino
  • Minisforum MS-S1 MAX – 128GB RAM Review
  • Cara Membuat Podcast dari PDF dengan NotebookLlama dan Groq
  • Tutorial Membuat Sistem Automatic Content Recognition (ACR) untuk Deteksi Logo
  • Apa itu Google Code Wiki?
  • Cara Membuat Agen AI Otomatis untuk Laporan ESG dengan Python dan LangChain
  • Cara Membuat Pipeline RAG dengan Framework AutoRAG
  • Apa itu Spear-Phishing via npm? Ini Pengertian dan Cara Kerjanya yang Makin Licin
  • Apa Itu Predator Spyware? Ini Pengertian dan Kontroversi Penghapusan Sanksinya
  • Mengenal Apa itu TONESHELL: Backdoor Berbahaya dari Kelompok Mustang Panda
  • Siapa itu Kelompok Hacker Silver Fox?
  • Apa itu CVE-2025-52691 SmarterMail? Celah Keamanan Paling Berbahaya Tahun 2025
Beli Morning Star Kursi Gaming/Kantor disini: https://s.shopee.co.id/805iTUOPRV
Beli Pemotong Rumput dengan Baterai IRONHOOF 588V Mesin Potong Rumput 88V disini https://s.shopee.co.id/70DBGTHtuJ

©2026 emka.web.id | Design: Newspaperly WordPress Theme