Saya mengalami masalah seperti itu ketika menggunakan ASP untuk membuat halaman web untuk unit tertentu. Sistem MIS unit sebelumnya menyimpan beberapa file Word dalam bentuk aliran byte di database data dari database. Pada awalnya, saya secara alami berpikir untuk membuat file sementara di server, dan kemudian menambahkan tautan ke file sementara di halaman web. Namun, metode ini akan sangat meningkatkan beban di server, dan bagaimana memastikan bahwa file sementara tersebut digunakan oleh klien tertentu dipastikan pada layanan. File tidak ditimpa oleh file yang digunakan oleh klien lain, dan cara menghapus file setelah ditransfer ke pengguna. Jadi apakah ada cara yang lebih baik?
Untuk alasan ini, saya hati-hati memeriksa buku referensi ASP dan menemukan bahwa objek Respon memiliki atribut yang disebut tipe konten, yang mendefinisikan tipe MIME dari konten yang dikirim oleh server ke klien. Nama lengkap MIME adalah Multiguna Internet Mail Extensions, yang merupakan ekstensi email Internet multiguna. Kita tahu bahwa dalam pemrograman web terkadang kita mengarahkan hyperlink ke file Word atau Excel. Saat pengguna mengklik link tersebut, browser akan secara otomatis memanggil metode yang sesuai untuk membuka file tersebut. Alasan mengapa hal ini mungkin terjadi adalah setelah menginstal Office di mesin pengguna, jenis sumber daya MIME yang sesuai akan didaftarkan di browser. Misalnya, tipe MIME dari file Word adalah Application/msword (yang pertama adalah tipe MIME dan yang terakhir adalah subkelas MIME), dan tipe sumber daya MIME dari file Excel adalah Application/msexcel. Faktanya, semua sumber daya yang dapat ditangani browser memiliki jenis sumber daya MIME yang sesuai. Misalnya, jenis file html MIME adalah Teks/html, dan jenis file JPG MIME adalah Gambar/JPG. Dalam interaksi dengan server, browser menentukan jenis pemrosesan yang akan dilakukan berdasarkan tipe MIME dari data yang diterima. Untuk file seperti html dan JPG, browser akan langsung membukanya , browser tidak dapat membukanya sendiri. File dibuka dengan memanggil metode yang sesuai. Untuk file yang tidak ditandai dengan tipe MIME, browser menebak tipenya berdasarkan ekstensi dan konten file. Jika browser tidak dapat menebaknya, browser meneruskannya sebagai application/octet-stream. Untuk memahami jenis MIME dari berbagai file, silakan melihatnya di win98 My Computer->View->Folder Options->File Types.
Jadi saya punya ide dan berpikir bahwa di ASP, pertama-tama saya bisa mengambil data WORD sebagai aliran byte, lalu menandai atribut contenttype-nya sebagai Aplikasi/msword, dan kemudian mengirimkannya ke klien Setelah klien menerima sumber daya ini, itu akan mengetik MIME, secara otomatis akan memanggil Word di komputer klien (tentu saja, premisnya adalah bahwa Word diinstal pada komputer klien, jika tidak maka akan diperlakukan sebagai sumber daya yang tidak dikenal, meminta pengguna untuk menyimpannya alih-alih membukanya) ke membukanya. Hasil pengujiannya sangat bagus, metodenya sederhana dan cepat, dan browser menggunakan mode tertanam (mirip dengan mode OLE) untuk membukanya di IE5, dan efeknya bahkan lebih baik. Berikut isi programnya.
Asumsikan nama tabel adalah tab_word. Ada dua bidang dalam tabel. Salah satunya adalah bilangan bulat bernama id, yang digunakan sebagai pengidentifikasi unik data Word. Sekarang kita ingin menampilkan isi file Word dengan ID sama dengan 1 pada halaman Program ASPnya adalah sebagai berikut:
< %
' samb - koneksi database dibuat
'rs -- kumpulan hasil
rs = samb.eksekusi(pilih
data kata dari tab_word di mana id = 1)
respon.contenttype = Aplikasi/msword
respon.writebinary(rs(worddata))
'Hati-hati mengirimkan data dalam kumpulan hasil secara langsung menggunakan writebinary, jangan menggunakan variabel
'Terima data ini, jika tidak, sistem akan melaporkan kesalahan
%>
Dengan menggunakan metode serupa, Anda juga dapat memproses Excel, Bmp, dan banyak tipe data lainnya.