Hadi Rusiah wrote:
> > inti CGI adalah mekanisme sederhana di mana suatu request
> > dapat diteruskan ke program, diproses, dan hasilnya diterima
> > kembali oleh webserver.
> 
> Kalau kita memakai pernyataan ini, maka subject thread ini
> sudah terjawab : ASP adalah CGI, begitu pula dgn JSP, CFM, dll.
> Personally, saya setuju dgn pernyataan tsb.

lho, kok anda berkesimpulan demikian? karena mekanisme ASP 
juga sederhana? sama-sama sederhana bukan berarti sama
lho :-) mungkin kalimat saya yang sebelumnya yang 
membingungkan, sehingga mengakibatkan kesimpulan yang kurang
matang. karena itu saya mencoba membuat ringkasan berikut, 
biar lebih jelas (bagi saya, dan semoga juga bagi yang 
lain):

1. "semua webserver harus mendukung GET dan POST. data untuk
GET ditaruh di URI (setelah karakter ?). data untuk POST 
ditaruh di dalam request body."

ini tidak diatur oleh spec CGI, melainkan oleh spec HTTP.
di tahap ini belum relevan jika berbicara tentang CGI, sebab
webserver harus menentukan dulu, setelah menerima request, 
apakah request ybs ditujukan kepada suatu program CGI atau
bukan.

2. "suatu program CGI menerima data GET dari environment
variable QUERY_STRING, dan data POST dari standard inputnya,
yang diberikan oleh webserver kepadanya. apakah data GET
atau POST yang harus dibaca, diketahui dari environment
variable REQUEST_METHOD."

"program mengeluarkan prosesnya ke standard outputnya,
yang nanti akan ditangkap oleh webserver".

ini diatur oleh spec CGI (setidaknya, CGI/1.1). "standard 
input" dan "standard output". menurut saya, kata kunci inilah 
yang unik, yang membedakan CGI dari yang lain. yang membuat
CGI itu dipandang sederhana (karena umumnya tiap program 
dapat mengakses standard input/output -- dan juga environment
variables -- dengan cara sederhana, karena ketiganya adalah
cara umum sebuah program berkomunikasi dengan proses lain.
setidaknya di platform berbasis Unix).

di mana letak ASP? mempertimbangkan poin2 berikut:
- skrip ASP dapat melihat data GET mentah lewat 
Request.ServerVariables('QUERY_STRING')
- skrip ASP dapat membaca data POST mentah lewat
Request.BinaryRead()
- menulis data yang akan diteruskan langsung ke client lewat
Response.BinaryWrite()

kita mungkin berpendapat bahwa ASP dijalankan dengan
CGI (dengan anggapan Request.BinaryRead() membaca
standard input, Response.BinaryWrite() menulis ke 
standard output). tapi karena akses baca-tulis tsb
dienkapsulasi dengan method, dengan mudah akses di
bawahnya dapat diubah (misalnya, Request.BinaryRead()
membaca langsung buffer hasil pembacaan request body 
oleh webserver), maka menurut definisi cara demikian
menurut saya tidak lagi termasuk CGI.

kalau di CGI/1.2 semuanya menjadi lebih general, maka
bisa jadi semua bisa disebut termasuk CGI nantinya.

> > saya pikir yang membuat ASP tidak portabel adalah arsitekturnya
> > yang sangat berbasis COM. COM inilah yang tidak portabel, karena
> > sangat Window-ish.
> 
> Kelihatannya memang ini salah satu sebab, bukan absolut.
> Kalau totally COM based harusnya web server lain yg jalan
> di lingkungan windows bisa pakai feature ASP, krn COM
> accessible utk aplikasi-aplikasi di windows.

belum tentu. apakah semua web server Windows yang tersedia
di Windows (terutama yang "kecil-kecil" dan free) mendukung 
CGI, hanya karena di Windows kita dapat menerima/mengirim 
data dari/ke STDIN/STDOUT? kita sedang bicara portabilitas
kan, bukan feature? kalau web server lain tidak mendukung
ASP, berarti feature ini tidak dimasukkan oleh developernya
(karena alasan teknis/nonteknis). kalau saya boleh curiga 
sih, untuk ASP ini masalahnya karena lisensi (misalnya, 
karena spesifikasi ASP tertutup dan dilindungi, um, paten 
misalnya -- tapi saya belon ngecek...).

> > tepatnya mungkin 'pengikut Camel', karena Camel merujuk ke
> > Perl itu sendiri.
> Pls don't take this part seriuosly :)

on the contrary, i think my problem is that i never take 
anything seriously. :-)

-- 
sh

- Perbesar peluang bisnis Anda dengan www.jatimmall.com
To unsubscribe, e-mail : [EMAIL PROTECTED]
To subscribe, e-mail   : [EMAIL PROTECTED]
Netika BerInternet     : [EMAIL PROTECTED]
Arsip di http://www.mail-archive.com/[email protected]/

Kirim email ke