已阅读5页,还剩49页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第7章 创建Web服务器程序,本章要点 7.1 Internet概述 7.2 Web服务器程序简介 7.3 ISAPI编程 7.4 CGI编程 7.5 ISAPI DLL和CGI之间的相互转化,本章要点,在Internet概述的基础上,对Web服务器程序进行阐述。 结合实例说明了ISAPI编程。 结合实例说明了CGI编程。,返回本章首页,7.1 Internet概述,7.1.1 术语与标准 7.1.2 统一资源定位器 7.1.3 超文本标记语言 7.1.4 HTTP服务器活动,返回本章首页,7.1.1 术语与标准,与Web服务器应用程序相关的几个重要RFC标准包括: RFC822:ARPA lnternet文本报文标准,描述了报文头标的结构和内容。 RFC152l:MIME第一部分,描述封装和传递多种格式和多段Internet信息的方法。 RFCl945:超文本传输协议(HTTP协议),描述了多媒体文档的传输协议。,返回本节,7.1.2 统一资源定位器,URL对网络资源的位置提供了一种抽象的识别方法,并用这种方法给资源定位。这里的资源是指Internet上可以被访问的任何对象,包括文件、文档、图像、声音等等,以及与Internet相连的任何形式的数据。URL是一个字符串,它的一般格式如下: 协议:/主机名/脚本文件名/路径信息?查询条件。,返回本节,7.1.3 超文本标记语言,HTML文档通过标记(Tag)和属性(Attribute)对超文本的语义进行描述。HTML虽然本质上并不是编程语言,但它却是在开发HTML文档时必须遵守的一套严格而且简明易懂的语法规则。也就是说,如果一个文档是基于HTML标准的,则可以解释某些标记的含义。,返回本节,7.1.4 HTTP服务器活动,Web浏览器和Web服务器之间通过HTTP协议进行通信。 HTTP请求分为两种类型,一种是GET请求,另一种是POST请求。 Web服务器接收到客户请求之后,将根据配置信息执行一定数量的活动。当Web服务器应用程序完成客户请求之后。必须构造一个HTML页面或其他MIME内容,并传输给客户。,返回本节,7.2 Web服务器程序简介,7.2.1 Web服务器程序的种类 7.2.2 Web服务器应用程序的逻辑结构 7.2.3 调试服务器程序,返回本章首页,7.2.1 Web服务器程序的种类,Delphi 6中可以创建的Web服务器程序包括: CGI程序、Win-CGI程序和ISAPI(Microsoft Server DLL)、NSAPI(Netscape Server DLL)。,返回本节,7.2.2 Web服务器应用程序的逻辑结,图7-1 Web服务器程序的逻辑结构,返回本节,7.2.3 调试服务器程序,不同类型的Web服务器程序,需要在支持相应的服务器程序的服务器上进行。调试ISAPI或NSAPI类型的程序,则要求在支持这种服务器程序的服务器上进行。可以在服务器中编写一定的代码,作为用户请求直接调用这些服务器程序生成的DLL;而调试CGI和WinCGI类型的服务器程序就比较困难一些,需要在服务器上执行这些程序,并且需要编写代码作为用户请求的信息。,返回本节,7.3 ISAPI编程,7.3.1 返回静态页面 7.3.2 返回动态页面 7.3.3 接收用户输入的ISAPI DLL 7.3.4 一个完整的Web数据库应用程序,返回本章首页,7.3.1 返回静态页面,其步骤(具体制作如图7-27-10所示): 1新建项目 2程序框架 3创建ActionItem 4为ActionItem编写代码 5设置服务器 6编译ISAPI动态链接库程序 7调试ISAPI动态链接库,图7-2 选择Web Server Application,图7-3 选择生成Web服务器程序的类型,图7-4 ISAPI动态链接库的框架,图7-5 Action Editor对话框,图7-6 使用对象监视器为ActionItem设置属性,图7-7 选择存放ISAPI动态链接库的目录,图7-8 设置scripts目录为可执行的,图7-9 设置编译后的文件后缀名为dll,图7-10 浏览器中显示由ISAPI动态链接库生成的静态HTML页面,返回本节,7.3.2 返回动态页面,其具体的步骤如下: (1)在projectl项目文件中选择Web Module部件,激活ActionEditor对话框。 (2)在ActionEditor对话框新添加一个ActionItem。 (3)将第二个ActionItem命名为Dynamicdll,PathInfo属性设置为DateTime。 (4)为新建的ActionItem的OnAction事件编写代码。,图7-11 浏览器中显示由ISAPI动态链接库生成的动态HTML页面,返回本节,7.3.3 接收用户输入的ISAPI DLL,1OnAction事件的参数(主要属性如表7-1) 2创建用户输入的HTML页面(创建好的HTML页面如图7-12所示) 3添加PageProducer控件(具体含义如表7-2) 4为项目文件新建一个ActionItem 5调试程序(如图7-137-15所示),表7-1 TwebReques对象的主要属性,图7-12 创建好的用户输入界面,表7-2 MethodType方法的参数值及其含义,图7-13 在用户输入界面中输入数据,图7-14 使用GET方式得到的服务器响应信息,图7-15 使用POST方式得到的服务器响应信息,返回本节,7.3.4 一个完整的Web数据库应用程,1将数据表作为服务器程序的响应信息(如图7-16所示) 2增加查询功能 (Query控件和QueryTableProducer控件的属性设置如表7-3所示),图7-16 作为服务器响应信息输出的数据表,表7-3 控件的属性设置,返回本节,7.4 CGI编程,7.4.1 一个时间显示程序 7.4.2 命令行处理 7.4.3 CGI环境变量 7.4.4 CGI数据库编程,返回本章首页,7.4.1 一个时间显示程序,单击“Project”主菜单下的“Remove from Project”选项,将unit单元从项目文件中移走,然后按下Ctrl+F12键,选择项目文件,使它在代码编辑器中显示出来。在它的Program保留字后加入一个¥APPTYPE CONSOLE编辑器指令,将它转换成控制台应用程序,最后删除大部分项目源代码,如果直接在Delphi环境中运行该程序,则它会打开一个终端窗口,并输出writeln语句的内容,如图7-19所示。,图7-19 在Delphi环境中执行的结果,返回本节,7.4.2 命令行处理,CGI应用程序接收用户输入的方法有两种: (1)使用它的命令行参数识别页面(激活应用程序)的URL,而URL通常在应用程序名后面包括附加的参数。 (2)系统使用一系列环境变量向CGI应用程序进一步传递信息。在Win_CGI中,同样通过INI文件来传递,而没有使用环境变量。,返回本节,7.4.3 CGI环境变量,表7-4 CGI环境变量,返回本节,7.4.4 CGI数据库编程,(1)依次单击“File”“New”“Other”选项,然后在Business页面中选择DB Web Application Wizard,如图7-24所示。单击“OK”按钮,则出现选择Web数据库应用程序类型对话框,如图7-25所示。 (2)单击“Next”按钮,将出现选择数据表对话框,如图7-26所示。选择好数据表后,单击“Next”按钮,将出现选择要显示的字段对话框,如图7-27所示。,选择完需要显示的字段后,单击“Next”按钮,则出现设置Web页面对话框,如图7-28所示。 (3)所有的设置都完成后,则出现确认对话框,如图7-29所示。单击“Finish”按钮,就完成了创建一个Web项目文件的工作。 向导为我们生成了WebModule1模块,其中加入了三个控件如图7-30所示。编译并运行该程序,则在浏览器中显示的结果如图7-31所示。,图7-24 利用DB Web Application Wizard向导创建项目文件,图7-25 选择Web数据库应用程序类型,图7-26 选择数据表,图7-27 选择要显示的字段,图7-28 设置Web页面,图7-29 完成创建项目文件,图7-30 向导自动生成的WebModule1模块,图7-31 显示结果,返回本节,7.5 ISAPI DLL和CGI之间的相互转,(1)将编写好并且调试成功的project5.dll创建成一个模板,以便在Win_CGI中使用(如图7-32所示)。 (2)关闭project5项目,在主菜单中
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 美妆专利转让合同范本
- 牛羊制品供货合同范本
- 神秘顾客调研合同范本
- 礼品加工定做合同范本
- 网红签约开店合同范本
- 物业转供电合同协议书
- 美容院合同范本协议书
- 租凭合同部分终止协议
- 炸鸡店整体转合同范本
- 第一单元第1节 计算机的前世今生 教学设计 -2024-2025学年粤教清华版初中信息技术七年级上册
- 2025湖北随州国有资本投资运营集团有限公司拟聘用人员笔试历年备考题库附带答案详解2卷
- 2025年四川省党政领导干部政治理论水平考试(理论测试)练习题及答案
- 基于聚类的图像分割算法研究
- 教练式辅导-GROW模型介绍
- 河南粮投油脂有限公司油脂产业园项目环评报告
- 日中星鸟以殷仲春夏商周三代的星象与神学价值
- 原发免疫性血小板减少症教学查房
- 丈夫出轨净身出户协议书
- 矿泉水行业深度解析
- 部编版语文1至6年级下册教学总结
- 公路工程交工自评报告
评论
0/150
提交评论