Delphi 6程序设计及其应用开发--第7章 创建Web服务器程序

上传人:油条 文档编号:48609557 上传时间:2018-07-18 格式:PPT 页数:54 大小:1.10MB
返回 下载 相关 举报
Delphi 6程序设计及其应用开发--第7章 创建Web服务器程序_第1页
第1页 / 共54页
Delphi 6程序设计及其应用开发--第7章 创建Web服务器程序_第2页
第2页 / 共54页
Delphi 6程序设计及其应用开发--第7章 创建Web服务器程序_第3页
第3页 / 共54页
Delphi 6程序设计及其应用开发--第7章 创建Web服务器程序_第4页
第4页 / 共54页
Delphi 6程序设计及其应用开发--第7章 创建Web服务器程序_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《Delphi 6程序设计及其应用开发--第7章 创建Web服务器程序》由会员分享,可在线阅读,更多相关《Delphi 6程序设计及其应用开发--第7章 创建Web服务器程序(54页珍藏版)》请在金锄头文库上搜索。

1、第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文本报文标

2、准,描述了报文头标的结构和内容。 RFC152l:MIME第一部分,描述封 装和传递多种格式和多段Internet信息的方 法。 RFCl945:超文本传输协议(HTTP 协议),描述了多媒体文档的传输协议。 返回本节7.1.2 统一资源定位器URL对网络资源的位置提供了一种抽象的识别方法,并用这种方法给资源 定位。这里的资源是指Internet上可以被访问的任何对象,包括文件、文档、图像、 声音等等,以及与Internet相连的任何形式 的数据。URL是一个字符串,它的一般格式如下:协议:/主机名/脚本文件名/路径信 息?查询条件。返回本节7.1.3 超文本标记语言HTML文档通过标记(Ta

3、g)和 属性(Attribute)对超文本的语义进行描 述。HTML虽然本质上并不是编程语言, 但它却是在开发HTML文档时必须遵守的一套严格而且简明易懂的语法规则。也就 是说,如果一个文档是基于HTML标准的,则可以解释某些标记的含义。 返回本节7.1.4 HTTP服务器活动Web浏览器和Web服务器之间通过 HTTP协议进行通信。 HTTP请求分为两 种类型,一种是GET请求,另一种是 POST请求。 Web服务器接收到客户请求之后,将根据配置信息执行一定数量的活 动。当Web服务器应用程序完成客户请求 之后。必须构造一个HTML页面或其他 MIME内容,并传输给客户。返回本节7.2 We

4、b服务器程序简介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服务器应用程序的逻辑结Web ServerWeb Applicatio nWeb Module (Dispatcher)Web RequestWeb Respons eAction ItemContent Rrod

5、uce rContent Rroduce rContent Rroduce rAction Item图7-1 Web服务器程序的逻辑结构 返回本节7.2.3 调试服务器程序不同类型的Web服务器程序,需要在支持相 应的服务器程序的服务器上进行。调试ISAPI或 NSAPI类型的程序,则要求在支持这种服务器程序的服务器上进行。可以在服务器中编写一定的 代码,作为用户请求直接调用这些服务器程序生 成的DLL;而调试CGI和WinCGI类型的服务器程序就比较困难一些,需要在服务器上执行这些 程序,并且需要编写代码作为用户请求的信息。 返回本节7.3 ISAPI编程7.3.1 返回静态页面7.3.2

6、返回动态页面7.3.3 接收用户输入的ISAPI DLL7.3.4 一个完整的Web数据库应用程序返回本章首页7.3.1 返回静态页面其步骤(具体制作如图7-27-10所示):1新建项目2程序框架3创建ActionItem4为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、录 图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动态链接 库

8、生成的动态HTML页面返回本节7.3.3 接收用户输入的ISAPI DLL1OnAction事件的参数(主要属性如 表7-1)2创建用户输入的HTML页面(创建 好的HTML页面如图7-12所示)3添加PageProducer控件(具体含义 如表7-2)4为项目文件新建一个ActionItem5调试程序(如图7-137-15所示)表7-1 TwebReques对象的主要属性属性属性的作用Query由GET方法请求获得全部参数组成的字符串QueryFields一个经过分解的查询字段Content由POST方法请求获得全部参数组成的字符串ContentFields一个经过分解的Content字段图

9、7-12 创建好的用户输入界面 表7-2 MethodType方法的参数值及其含义参数值具体含义MtGet采用GET方法接收用户请求MtPost采用POST方法接收用户请求MtPut用Content的值代替URL属性确定的资源的用户请求MtHead要求获得有关HTTP服务器响应信息种类的请求MtAny任何其他形式的用户请求图7-13 在用户输入界面中输入数据图7-14 使用GET方式得到的服务器响应信息 图7-15 使用POST方式得到的服务器响应信息返回本节7.3.4 一个完整的Web数据库应用程1将数据表作为服务器程序的响应信 息(如图7-16所示)2增加查询功能(Query控件和Quer

10、yTableProducer 控件的属性设置如表7-3所示)图7-16 作为服务器响应信息输出的数据表表7-3 控件的属性设置控 件属性设置Query1DatabaseName:DBDEMOSQueryTableProduc er1Query:Query1 RowAttributes.Align:haCenter TableAttributes.Border:1返回本节7.4 CGI编程7.4.1 一个时间显示程序7.4.2 命令行处理7.4.3 CGI环境变量7.4.4 CGI数据库编程返回本章首页7.4.1 一个时间显示程序单击“Project”主菜单下的“Remove from Proj

11、ect”选项,将unit单元从项目文件中 移走,然后按下Ctrl+F12键,选择项目文件,使它在代码编辑器中显示出来。在它的 Program保留字后加入一个¥APPTYPE CONSOLE编辑器指令,将它转换成控制台应用程序,最后删除大部分项目源代码,如果直 接在Delphi环境中运行该程序,则它会打开一 个终端窗口,并输出writeln语句的内容,如图 7-19所示。 图7-19 在Delphi环境中执行的结果返回本节7.4.2 命令行处理CGI应用程序接收用户输入的方法有 两种: (1)使用它的命令行参数识别页面( 激活应用程序)的URL,而URL通常在应 用程序名后面包括附加的参数。 (

12、2)系统使用一系列环境变量向CGI 应用程序进一步传递信息。在Win_CGI中 ,同样通过INI文件来传递,而没有使用环 境变量。返回本节7.4.3 CGI环境变量表7-4 CGI环境变量环境变量含义SERVER_NAM EWeb服务器主机名SERVER_PROT OCOLHTTP请求的协议SERVER_SOFT WAREWeb服务器软件的名称和版本GATEWAY_IN TERFACECGI支持的版本REQUEST_ME THOD请求使用的对象方法,可以是GET或者POSTDOCUMENT_RO OT目录主机文档或者Web服务器PATH_TRANSLA TES与服务器有关的物理路径HTTP_P

13、EFERER激活CGI应用程序的文档URLSCRIPT_NAME被执行的CGI应用程序相关的路径(基于服务器地址 )PATH_INFO向CGI应用程序传递的路径,位置在应用程序名和查 询字符串之间QUERY_STRING向程序传递的查询,当请求对象的方法是GET时,该 字符串用问号追加到URL中返回本节7.4.4 CGI数据库编程(1)依次单击“File”“New”“Other” 选项,然后在Business页面中选择DB Web Application Wizard,如图7-24所示。单击 “OK”按钮,则出现选择Web数据库应用程序 类型对话框,如图7-25所示。 (2)单击“Next”按

14、钮,将出现选择数据 表对话框,如图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

15、-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项目,在主菜单中选择 “New”选项,创建一个新的项目,指定为 Win_CGI。(3)新建项目后,Delphi将自动产生一个缺 省的Web Module控件,在加入模板后再将它删除 (如图7-33所示)。 返回本章首页图7-33 加入project5dll模板图7-32 为模板设置属性返回本节本章到此结束,谢谢您的光临!结束放映返回本章首页THANK YOU VERY MUCH !

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号