二、CGI设计初步
1. CGI数据传送方法 客户有两种方法: ⑴通过环境变量,采用GET方式:<form method="GBT" action="/cgi-bin/mycgi">…</ 该法简单,但用cethod= ⑵通过标准输入,采用POST方式──建议使用方式 标准输入法是通过method= URL编码就是浏览器把表单输入的数据传送到服务器时, CGI程序是一种在www服务器上运行的程序, ⑴CGI程序的输出要写标准输出 这样,服务器才能解释这一输出,并把它返回到浏览器。 ⑵CGI程序的数据头要告诉服务器如何处理该程序的输出 为了使服务器能够解释CGI程序的输出, ①数据类型(Content-type), 如:Content-type: text/html ②地址类型(Location), 如:Location://www.w3.0rg ③状态类型(Status), 如:Status:204 No Respouse CGI程序同下列三部分构成: ⑴数据解码部分:由浏览器传送给服务器的通过表单输入的数据都是 ⑵数据头部分:必须包含这一部分作为第一个输出行, ① 数据类型(Content-type), 如:Content-type: text/html ②地址类型(Location), 如:Location://www.w3.org ③状态类型(Status), 如:Status:204 No Respouse ⑶CGI程序主体部分:对通过表单输入的数据进行处理, 若服务器要把数据传送给浏览器, 例1: 如服务器要判断回一个HTML文件, 例2: 如服务器要送回的文件类型是JEPG文件, 其余的数据以此类推。 若用户想在服务器上打开或加载一个现有的文件, 例1: Location: http://www.lne.com/index.html 例2: Location: http://www.w3.org/ 例3: Location: http://lemay/the Book/index.html 如果在传送最后服务器还要送一个特殊的状态码到浏览器, 例:Status: 204 No Response 此状态码表示这时浏览器不能从服务器得到任何反馈信息, 下面是一个检索约翰是否登录的例子:
|