说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

Delphi开发Web Server程序响应用户的输入

HTML文档下载 WORD文档下载 PDF文档下载
Delphi开发Web Server程序响应用户的输入

随着Internet/Intranet的飞速发展和普遍应用,对在Internet/Intranet上的应用程序的需求越来越多,于是Java和ActiveX Form应运而生,但是,现在Internet的带宽还非常低下的情况下,这种基于Client端的应用是非常困难的,下载一个非常小、功能非常简单的Java Applet就需要非常长的时间,而且还存在着用户使用浏览器不支持这种新技术的可能。在这种情况下,基于服务器的CGI,Win-CGI,ISAPI/NSAPI还是一种主要的方式。使用Delphi 3开发Web Server程序是非常简单的,Delphi 3中提供了大量的元件和对象,支持Web Server程序的开发。

在Delphi 3的Demos中提供了简单的Web Server程序开发的例程,本文主要集中在此例程中没有涉及到的响应用户输入的问题。

HTML中用户输入主要是

语句,在中,支持POST、PUT、GET和HEAD方法,而PUT,GET和HEAD方法返回数据的方式基本相同。

例如(查询某人的电话号码):

姓名:


在这个例子中使用了POST方法。那么在Web Server应用程序中,如何得知用户的输入信息呢?

在HTTP协议中,客户端向Web Server应用程序返回数据主要是通过URL和CONTENT部分。例如URL中:http://www.delphi.com.cn/dfyw/cgi-bin/delinfo.exe?id=10,这里,id=10数据参数,告诉delinfo.exe显示从ID=10开始的信息,这一般应用在数据量较少的情况下,优点是比较容易输入参数,缺点是数据量不能太大,并影响URL的显示。在CONTENT中保存数据信息的优点是不影响URL的显示,而且数据量较大,缺点是用户只能使用

表格让浏览器生成请求,不能直接输入请求信息。

除了POST方法使用CONTENT部分返回数据以外,其它方法都是通过URL来返回数据的。

Delphi中有TWebRequest对象,这个对象将HTTP返回的信息进行分析,非常容易使用。对于CONTENT中的数据,TWebRequest使用ContentFields,将数据分析成为一个TStrings,可以直接使用Request.ContentFields.Values['name']来都取数据。而URL中的数据,TWebRequest使用QueryFields,也将数据分析成为了一个TStrings,可以直接使用Request.QueryFields.Values['name']来读取数据。

例如上面的HTML返回的消息处理:

if Request.ContentFields.Values['name']<>’’ then

Response.Content:= Request.ContentFields.Values['name']

+’的电话号码是:’+QueryTelCode(Request.ContentFields.Values['name'])

else

Response.Content:=’请输入用户名’;

当然,还有一种输入数据是Cookie。Cookie是保存在客户端的一种数据,用来保存访问者的访问信息等。对于Cookie数据使用 CookieFields来进行读取。

Hallo.js:一款所见即所得的Web编辑器 数据分析≠Hadoop+NoSQL,不妨先看完善现有技术的10条捷径 移动周报:百度收购91,19亿美金背后的博弈 植物大战僵尸2:“免费+内付费”模式引发争论 [CTO俱乐部第103期] 高德和四维图新技术高管谈地图导航的发展与挑战 用jmail发信 weblogic配置 在调用了jsp的response.sendRedirect()和javascript的window.location.href后,页面是否还继续执行? 初级问题:怎么在TextBox中返回系统当前时间 如何在2000server下装98! 请问谁有软件评估报告的模板? 如果不用 HttpPostedFile控件,怎样把一个客户端文件上传到服务器。 急救 请问,如何在页面打开前显示“此叶面正在加载...”这样的话 “四不象”的“四”是只哪四种动物,它是哪种动物的后 反函数法解题y=(10的x次幂-10的-X幂)/( 怎么求?高中反函数求答案 麝鹿和麋鹿是一种动物?快,没有多少悬赏了. 如图,正方形ABCD的边长为4,点P为CD上任意一 标有六伏三瓦的灯接入电源电压为八伏的电源上,求灯泡 谁能告诉我Europe and the Unite For many cities in the wo That you spread your wing 马来西亚移民局前总监被判处贪污罪名成以色列军方与武装分子在加沙地带交火 卜拉希米:日内瓦会议不能缺少叙反对派韩政府再次敦促日方删除主张争议岛屿主德国成欧洲首个允许出生登记性别栏空白陕西电信“100M”宽带已成主流交通肇事案还未审结 肇事方上了“老赖老太误上公交车 调度站帮她找到家人网传“晚婚假23天变3天”?咸阳英语冬令营 开营说明会免费预约门天生奇才新三国之遁甲天书猎场重生之校园邪神与你同看世间繁盛美姑旅游漳扎旅游同心旅游耀县旅游宁厂旅游
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘