CGI教程 第三章 傳送方法
發(fā)布時間:2008-08-23 閱讀數(shù): 次 來源:網(wǎng)樂原科技
傳送方法:
所謂方法是指調(diào)用CGI程序的途徑。事實上,要執(zhí)行程序時,你用一種
方法向服務器提出請求,此請求定義了程序如何接受數(shù)據(jù)。 下面介紹
最常用的兩種方法:get和post
1.GET 當使用這種方法時,CGI程序從環(huán)境變量QUERY_STRING獲取數(shù)據(jù)。
QUERY_STRING 被稱為環(huán)境變量,就是這種環(huán)境變量把客戶端的數(shù)據(jù)傳
給服務器。為了解釋和執(zhí)行 程序,CGI必須要分析(處理)此字符串。
當你想從服務器獲得數(shù)據(jù)并且不改變服務 器上的數(shù)據(jù)時,你應該選用GET。
但如果你的字符串長度超過了一定長度,那么還是選用POST方法。
2.POST 使用POST方法時,WEB服務器通過stdin(標準輸入),向CGI程序
傳送數(shù)據(jù)。服務器 在數(shù)據(jù)的最后沒有使用EOF字符標記,因此程序為了
正確的讀取stdin,必須使用CONTENT_LENGTH 。當你發(fā)送的數(shù)據(jù)將改變
Web服務器端的數(shù)據(jù)或者你想給CGI程序傳送的數(shù)據(jù)超過了1024 字節(jié),
這是url的極限長度,你應該使用post方法。
3.實現(xiàn)方法:
上次講過html中的<Form>標簽,對于傳送數(shù)據(jù)方法的定義也在這個標簽
里定義。 如下:
<form name="guyi's form" action="http://www.yourname.com/cgi/your.cgi" method=GET>
定義了一個以get方法傳送數(shù)據(jù)的form,它的服務端程序是http://www.yourname.com/cgi/your.cgi.
同樣的如下的定義將使用post方法。
<form method=post>