Direkomendasikan: Asp mengontrol 6 kode yang sangat klasik untuk database XML No.1-Buat database database XML.xml <? Versi XML = 1.0?> <sekaman> <sekaman> <name> Caca </name> <Qq> 1
7.2.4 Kesalahan skrip klien
Sejauh ini, kami telah belajar tentang kesalahan dari ASP. Namun, ASP juga sering digunakan untuk membuat halaman web yang berisi skrip klien. Jika elemen <script> yang berisi kode klien tidak diatur ke atribut Runat = Server, ASP tidak akan mempertimbangkan server dan mengirimkan informasi halaman web ke klien tanpa mengubahnya.
Oleh karena itu, jika halaman web ASP dibuka dan dialog kesalahan browser ditampilkan, Anda tidak boleh mencari kesalahan dalam kode program ASP di sisi server. Browser tidak dapat melihat kode program ASP, sehingga tidak dapat mengenali kesalahan apa pun. Jika kotak dialog muncul di klien, harus ada kesalahan dalam kode klien.
1. Kesalahan sintaksis
Jika ada kesalahan sintaks dalam kode program klien di halaman web, browser akan mengalami kesalahan yang sesuai ketika skrip diunduh ke klien. Meskipun konten di halaman web masih dapat dimuat secara normal (kecuali secara dinamis dimuat oleh kode skrip klien ini), halaman web berhenti dieksekusi. Pengguna akan melihat kotak dialog yang berisi detail kesalahan, atau pesan status yang menunjukkan bahwa halaman web berisi kesalahan.
Browser modern cenderung menyembunyikan detail kesalahan skrip web, dan hanya menampilkan ikon kesalahan kecil pada bilah status. Dalam IE 4.0 dan IE 5.0, kotak dialog kesalahan normal dapat diaktifkan melalui halaman lanjutan dari kotak dialog Opsi Internet, seperti yang ditunjukkan pada Gambar 7-14:
Gambar 7-14 Layar Pengaturan Halaman Lanjutan
Menangani kesalahan klien dalam kode program skrip mirip dengan yang ada di sisi server dan biasanya lebih mudah karena halaman web sering dapat diunduh langsung dari direktori server dengan mengklik dua kali. Secara umum, tidak perlu mendapatkan halaman web melalui server web dan HTTP untuk mengamati hasil di browser. Satu -satunya perbedaan adalah bahwa beberapa interaksi server dilakukan oleh skrip klien, seperti pengikatan data atau pemuatan dinamis menggunakan RDS.
2. Runtime atau kesalahan semantik
Dalam skrip klien, Anda mungkin sering mengalami kesalahan sintaksis, dan kesalahan run-time atau semantik. Bahkan, fenomena ini sangat umum di sisi klien. Karena klien tidak dapat mengontrol lingkungan skrip seperti sisi server, tidak pasti apa yang dijalankan pengguna di mesin mereka. Bahkan, server hanya bisa mendapatkan situasi umum dari beberapa komponen seperti kemampuan browser.
Oleh karena itu, program skrip yang menggunakan objek klien atau versi khusus bahasa skrip dan properti kemungkinan tidak berfungsi dengan baik. Namun demikian, menangani kesalahan klien mirip dengan menangani kesalahan server.
3. Kode program klien dibuat di server
Ketika kesalahan terjadi, sebagai pengecualian khusus untuk aturan halaman kesalahan ASP (tentang di mana kesalahan terjadi) yang sesuai dengan aturan halaman kesalahan ASP adalah dengan menggunakan kode program ASP untuk secara dinamis membuat kode program klien di server. Misalnya, Anda mungkin ingin melakukan operasi evaluasi di ASP dan kemudian meneruskan data ke kode skrip yang berjalan pada klien. Cara termudah adalah memasukkan data ke dalam kode skrip sebagai variabel:
<%
'Dapatkan nama server kami dari koleksi ServerVariables
strserverNameInp = request.serverVariable (server_name)
%>
<Bahasa skrip = jscript runat = klien>
<!- Sembunyikan kode dari browser yang lebih lama
var strservername = < % = strserverNameInp %>;
...
alert ('nama server adalah:' strserverName);
...
// Berhenti bersembunyi kode
->
</script>
Pada klien, setelah ASP memproses halaman ini, apa yang akan Anda dapatkan adalah:
<Bahasa skrip = jscript runat = klien>
<!- Sembunyikan kode dari browser yang lebih lama
var strservername = Wroxbox;
...
alert ('nama server adalah:' strserverName);
...
// Berhenti bersembunyi kode
->
</script>
Atribut runat = klien dapat diabaikan, tetapi menambahkan item ini dapat membuatnya lebih jelas saat melihat halaman web ASP tempat kode berjalan.
Dengan cara ini, jika Anda ingin menambahkan data dari database sisi server ke array klien di lokasi tertentu, Anda dapat menggunakan program berikut untuk mengimplementasikannya:
<Bahasa skrip = jscript runat = klien>
<!- Sembunyikan kode dari browser yang lebih lama
var arrbooks = array baru (10) // indeks tertinggi yang tersedia akan
<% 'awal pemrosesan ASP
IntIndex = 0
Lakukan sementara {tidak di akhir beberapa recordset}
strtitle = {Dapatkan judul dari catatan database}
Response.write arrbooks [& cint (intindex) &] = '_
& strtitle & '; & vbcrlf
IntIndex = IntIndex 1
{Pindah ke catatan berikutnya dalam database}
Lingkaran
...
Lakukan sesuatu di sini pada klien dengan berbagai judul buku
...
// Berhenti bersembunyi kode
->
</script>
Kode klien ini yang dihasilkan oleh kode program ASP sisi server membuat berbagai judul buku saat klien berjalan. Kesalahan skrip klien yang dihasilkan secara bersamaan muncul di kotak dialog kesalahan browser. Alasan kesalahannya adalah bahwa array yang dinamai ARRBook dibuat oleh kode JavaScript saat berjalan pada klien dan hanya dapat menerima 9 judul buku; Sementara kode sisi server kemungkinan besar dapat menghasilkan lebih dari 9 judul buku, yang ditentukan oleh jumlah catatan dalam database sumber. Ini setara dengan kode klien berikut:
<Bahasa skrip = jscript runat = klien>
<!- Sembunyikan kode dari browser yang lebih lama
var arrbooks = array baru (10) // indeks tertinggi yang tersedia akan
arrbooks [0] = 'Instant JavaScript';
arrbooks [1] = 'Profesional ASP 3.0 Pemrograman';
arrbooks [2] = 'ADO 2.5 Programmer Referensi';
...
dll.
...
arrbooks [9] = 'Teknik ASP untuk webmaster';
arrbooks [10] = 'Referensi Programmer ASP'; // <- Kesalahan sisi klien terjadi di sini
arrbooks [11] = 'pemrograman ADSI CDO';
arrbooks [12] = 'Profesional MTS dan pemrograman MSMQ';
...
Lakukan sesuatu di sini pada klien dengan berbagai judul buku
...
// Berhenti bersembunyi kode
->
</script>
Halaman ini hanya dapat bekerja dengan baik setelah koreksi. Ini dapat ditingkatkan dengan meningkatkan ukuran array atau dengan mengendalikan jumlah catatan dari database.
7.3 Mencegah kesalahan
Saya telah melihat beberapa jenis kesalahan yang dapat terjadi di atas, dan saya merasa seperti mencari kesalahan. Berikut adalah beberapa pertimbangan tentang cara menghindari memasukkan kesalahan ke dalam program. Meskipun tidak dijamin bahwa program yang ditulis bebas dari kesalahan, banyak teknik yang dirangkum di sini dirangkum.
Bagikan: Cara Mengubah Halaman Web Dinamis ASP menjadi HTM Halaman Statis Beberapa waktu yang lalu, halaman ASP sangat lambat untuk dieksekusi, dengan banyak pengunjung, dan itu tidak sering dimodifikasi, jadi terlalu malas untuk secara langsung membuatnya menjadi statis. Setiap kali saya harus mengunduhnya dari server untuk memodifikasinya, saya harus menemukan cara untuk mengubah halaman ASP menjadi halaman statis HTM. Saya pernah melihat ini sebelumnya