Persaingan bertahun-tahun antara berbagai browser telah menghasilkan terciptanya banyak alat untuk membantu pengembang menyelesaikan tugas-tugas yang sebelumnya sulit dilakukan. Sekarang, hanya dengan sedikit skrip, Anda dapat membuat aplikasi yang mengikat data ke kontrol pengguna sehingga berkomunikasi dengan server melalui kontrol tipe proxy yang tertanam.
Di Internet Explorer (IE), hal-hal ini termasuk pulau data XML dan objek XMLHTTP. Pulau data XML digunakan untuk mengikat data ke elemen bentuk. Objek XMLHTTP digunakan untuk membuat koneksi ke server dalam halaman saat ini tanpa menavigasi ke halaman lain dan panggilan asinkron. Saya akan menggunakan dua fitur yang mudah digunakan ini untuk membuat aplikasi chat sederhana, yang terdiri dari beberapa halaman ASP yang bertindak sebagai UI, JavaScript untuk mengimplementasikan fungsi klien, dan T-SQL untuk melengkapi logika bisnis di SQL Server 2000.
Klien dan server berkomunikasi menggunakan XML. Setelah server Web menerima potongan pesan, potongan pesan ditambahkan ke tabel MESSAGES yang diberi stempel waktu di SQL Server. Berdasarkan interval waktu yang telah ditentukan, klien akan meminta informasi terkini dari server, termasuk daftar pesan dan daftar pengguna online yang ditambahkan ke database sejak terakhir kali meminta informasi dari server.
Klien akan mengirimkan objek XMLHTTP ke server. Tindakannya bisa berupa permintaan untuk menyegarkan pesan dan daftar pengguna, atau mengirim pesan baru. Tindakan ini disimpan dalam tabel yang disebut ACTIONS. Server akan merespons permintaan terkait atau menerima pesan baru dan menambahkannya ke tabel PESAN.
Ketika server merespons permintaan pesan, server mengembalikan daftar semua pesan baru sejak permintaan terakhir. Untuk melacak aktivitas pelanggan, saya menggunakan tabel ACTIVITY yang berisi tanggal dan waktu aktivitas pelanggan. Identitas pelanggan disimpan dalam tabel HANDLES, yang memiliki nama intuitif.
Berikut script untuk membuat tabelnya:
Semua operasi data akan diselesaikan melalui prosedur tersimpan. Semua antarmuka data akan dilakukan melalui COM generik yang bertindak sebagai penghubung antara server Web dan SQL Server 2000. Objek COM memperlihatkan metode RunSPReturnStream yang ingin saya gunakan. Parameter pertama dari metode ini adalah nama prosedur tersimpan, dan parameter kedua adalah array dari array parameter. Array parameter adalah array sederhana dengan format berikut: (paraName, paramType, paramLength, paramValue). paramType adalah salah satu enumerasi Tipe Parameter ADO. Halaman ASP bertanggung jawab untuk menerima tindakan dan membuat respons, saya menyebutnya HandleAction.asp.
Halaman obrolan akan berisi area untuk menampilkan pesan obrolan; area ini adalah TABEL yang terdapat dalam DIV. TABLE ini terikat ke pulau data XML xmlMessages. Area lain menampilkan pengguna saat ini; area ini juga merupakan TABLE yang terdapat dalam DIV, yang terikat ke pulau data XML xmlUsers. Ada juga TEXTAREA bagi pengguna untuk memasukkan pesan.