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

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来进行读取。

【开源专访】Sea.js创始人玉伯的前端开发之路 SDCC 2013:阿里周宝方谈“去IOE”战略及实施 百度和高德:最后谁是地图的王者? 【CTO论道】瑞智和康CEO陶建辉:软硬结合是消费电子新潮流 10大高效率原型设计工具 JIRA与敏捷:李小龙教给我们的敏捷开发之道 百度开放云:Light Up The World,与开发者共享云未来 有胆你就来!11个在线编码大赛 CTO如何避免决策失控:第一步-定义角色 后机械硬盘时代,那些引领风骚的闪存初创公司 致远文杰:传统企业如何实现移动化转型? 记华为HCC2013 Day2:SDN开放编程系统OPS打造生态圈 HCC2013:华为FusionCube融合至简,性能至优 已确认Stephen Elop候选微软下任CEO 英语对于软件开发者来说到底有多重要? SDCC 2013中国软件开发者大会成功落幕 新浪微博宋琦:PHP在微博优化中的“大显身手” 8月份浏览器份额:IE浏览器PC端出现反弹 移动端跌出前五 如何让Ruby项目速度提升10倍 跨平台进行到底:Facebook发布Unity SDK 云薪资管理初创公司ZenPayroll:年处理薪资超1亿美元,获多位知名CEO力挺 Twitter开源Summingbird:近原生编码下整合批处理与流处理 亚马逊推Matchbook 欲将顽固纸质书读者拉向电子书 Broadcom为可穿戴设备推新开发平台WICED 再战江湖 New Kodak还牛不牛? 郭理靖:公、私有云架构异同点与难点 美化代码的15个代码语法高亮工具 你所不知道的虚拟化和云计算 [开源推荐]Effeckt.css项目:CSS交互动画应用集锦 针对Google Glass应用的四大UX设计原则及典型应用 Google收了摩托罗拉,微软收了诺记,黑莓又将花落谁家? 請教: ADO 的 RecordSet 的打開方式和鎖方式 如何选择三层架构的中间件产品? 小呆猫谢谢了,再请教一下。。。 我想问一下,如何能在程序中锁定键盘和鼠标 西摩斯(厦门)医疗软件开发有限公司急招精通Delphi,MS SQL Sever软件设计师! 大家帮忙啊... 关于 int[][][] a = new int[3][3][3] 再问clavy(有巢无车氏) 和 wqxtt(wqxtt) 关于WINCE 下ACCESS 与 WINDOWS 下ACCESS 的转换 关于C/S结构的问题?快帮我啊!!! 各位programer加班有加班工资吗? 代理服务器的原理?——有谁知道! 请问怎么在一个对话框程序的文本框中绘图 请问windows网络程序PING编程技术里的几个问题,ICMP回显里面的timestamp是怎么纪录进去的 什么地方可以Down rose?或谁寄给我一个? 编写一个函数,通过指针连接两个字符串!!!!!!!!!!!! 用applet怎样打开一个文件吗? 请问哪种ORB产品实现了com服务器/corba客户机的桥 我读《深入探索C++对象模型》的感受,cber能再回答我一次么? 谁有DELPHI的有关网络编程方面的资料?给我一份可以吗? 关于stringgrid的问题????? 痛苦啊,难道要放弃BCB吗? 大家认为在开发过程中是否不能用全局变量? 如何让LINUX支持我显卡 高手,谁来帮我一下~! 取字符 在SDK中,如何获得客户区的宽度和高度呢??(哪两个函数呢?) 哪里有ATL的电子书下载?最好是中文的! 高手谁能帮帮我呀~~~~~~~! 请教:如何在statusbar的panel中显示一个图标呢? VC++中如何使用OLE对象? 初来乍到,发现这儿JJMM还挺多的。。。 请高人指教~! CSDN中碰到这种问题,该如何解决呢? 如何学习director 你能帮我一下吗?~ 企业商务管理软件,开放全部的源代码及开发文档! 企业管理软件,全套源码及开发文档!!!! 哪里有支持任何波特率的通讯控件下载? net_lover(孟子E章)请进~! 一个有关CWebBrowser的问题,急急急!!! 这样的语句为什么不可以实现一次删除多条记录 plmm是什么意思? 各位大侠,知道哪儿有直接可用的上传文件的控件吗? 多谢了!!! 论坛的题目是不是太没意思了 一个sqlserver7统计的问题?? varchar类型不是可以输入255个字符吗,为什么我输了160个就出现'item XXX doesn't pass validation test ' 唉 ~~~~~ 奈何 ~~~~~ 突然想到个荒唐的问题: 事件和过程有什么不同? 奇怪的事前,高手请进来 我的问题还没有解决~! 这里的高手呢,人听多,会的人不多 如图:己知∠BAD=∠CBE∠ACF,∠FDE=58∠DEF=45,求三角形ABC各内角的度数 在锐角三角形abc中,角A=2角B,则b/b+c的范围 已知,如图,在三角形abc中,AD,AE分别是三角形ABC的高和角平分线,试问角DAE与角C-角B有怎样的数量关系,说明理由 如图.在三角形abc中,ab=ac,点d,e,f分别在bc,ab,ac上,bd=cf,be=cd,角fde=58°,求角c的度数 在锐角三角形ABC中,角ABC所对边为a.b.c已知b=2,c=3,sinA=(2√2)/3求三角形ABC的面积及a的值 如图,已知,AF分别是两个钝角三角形ABC和三角形ABE的高,如果AD=AF,AC=AE,求证:BC=BE 在三角形ABC中,角A、角B、角C的对边分别是a、b、c,下列条件中,能判断三角形ABC为直角三角形的是( )A.a+b=c B.a:b:c=3:4:5C.a=b=2c C.∠A=∠B=∠C 在锐角三角形ABC中,根号3a=2csinA(1)确定角C大小.(2)若c=根号7,且三角形ABC的面积为3倍根号2/2,求a+b的值. 已知:如图,AD,AE分别是三角形ABC和三角形ABD的中线.如图,AD,AE分别是三角形ABC和三角形ABD的中线,且BA=BD.求证:AE=二分之一AC. 在△ABC中,∠A,∠B,∠C的对边分别是a,b,c判断该三角形是否是直角三角形?并指出哪一个角是直角?(1)a=根号3,b=2根号2,c=根号5 (2)a=5,b=7,c=9 (3)a=2,b=根号3,c=根号7 (4)a=5,b=2根号6,c=1 在锐角三角形ABC中,角A,B,C的对边分别为a,b,c,且根号下3a=2csinA (在锐角三角形ABC中,角A,B,C的对边分别为a,b,c,且根号下3a=2csinA (1)求角C的大小; (2)若c=√7,a+b=5求三角形的面积 如图,AD是三角形ABC的中线,AE垂直AC,AF垂直AB,且AE=AC,AF=AB,求证:AD=1/2EF 在直角三角形ABC中,角C=90度,过点B作BD平行AC且BD=2AC连结AD判断三角形ABD...在直角三角形ABC中,角C=90度,过点B作BD平行AC且BD=2AC连结AD判断三角形ABD形状并说明理由(角C=90度,就是一个直角梯形上底 在锐角三角形ABC中,a,b,c分别为角A,B,C所对的边,且√3a=2csinA.(I)确定角C的大小: 如图,三角形ABC中,角BAC等于120度,AD垂直BC于D,且AB+BD等于DC,求角C的度数 在直角三角形ABC中,角C=90度,若A+B=13,且该三角形的面积是22.,则C等于-----. 在锐角三角形ABC中,a b c 分别是角A B C的对边,且√3a-2csinA=0①求角c大小②若C=2,求a+b的最大值 已知:如图,在三角形ABC中,AD垂直于BC,垂足为点D,AD^2=BD*DC.求证:三角形ABC是直角三角形.今晚之前给我,最好8:15之前交给我 在直角三角形ABC中,角C=90度,其中a:b=3:4,c=40求三角形ABC的面积? 在锐角三角形ABC中,已知a=6,c=2√3.三角形ABC的面积为3√3,则角B等于多少? 如图,在三角形ABC中,已知角BAC=120度,AD垂直于BC,AB+BD=DC,求∠C的度数. 在直角三角形ABC中,a+b+c=90,且a=40,求三角形ABC的面积 在三角形ABC中,A,B为锐角,角A,B,C所对的边分别是a,b,c,且sinA=√5/5,sinB√10/10(1)求A+B的值(2)若a-b=√2-1,求a,b,c的值 如图9,三角形ABC中∠BAC=120°,AD垂直BC于点D,AB+BD=DC求∠C的大小 在直角三角形ABC中,角C=90度,若A+B=13,该三角形的面积是22,则c=--------. 在三角形ABC中,∠A=90°,角平分线AE,中线AD,高AH的大小关系为 如图 在三角形abc中,bd=dc,∠1=∠2,求证:ad垂直bc. 三角形ABC中,∠C=90°,CD垂直AB于点D,∠BAC的平分线交CD于E,过点E做EF平行于AB,交BC于F,求证:FB=CE 在直角三角形abc中,角c=90度,已知a:b=3:4,c=10,求三角形面积 在三角形ABC中,角A=90°,角平分线AE、中线AD、高AH的大小关系是? 已知,如图,在三角形ABC中,角ACB=90度,CD垂直AB,AE是角CAD的平分线,过点E作EF平行于BC交AB于F,求证:CE=EF 在直角三角形ABC中,角C等于90°,AB、BC、CA的长分别为c.a.b,求三角形ABC的内切圆 在三角形ABC中,AE,AD,AH分别是角平分线、中线、高线,角A=90°的大线关系是? 已知三角形abc中,角ACB=90°,CA=CB,CD垂直AB于D,CE平分角BCD交AB于E,AF平分角A交CD于F.求证:EF平行BC 用反证法证明:三角形ABC中至少有两个角是锐角.请写明过程. 已知三角形ABC中AB=AC,AD和BE是三角形ABC的高,相交点H,且AE=BE求证AH=2BD 如图,在三角形ABC中∠BAC=90度,AD垂直于BC于点D,CE平分∠ACB,交AD于点G,交AB于E,EF垂直于BC于F,求证:四边形AEFG是菱形 已知:锐角三角形ABC中,角B=2角C,求证:角A>45度.(用反证法证明) 在三角形ABC中,AB=AC,高AD,BE相交于H,且AE=BE,试说明AH=2BD.自己画图 三角形ABC是圆O的内接三角形.AC=BC.D为圆O中弧AB上一点.延长DA至点E.使CE=CD 求证AE=BD 已知锐角三角形ABC中,角B=2倍的角C,用反证法证明角A>45度 在三角形ABC中,AB=AC,AD和BE是高,它们相交于点H,且AE=BE.求AH=2BD在星期6晚上截止,有急用~图自己画吧... 在三角形ABC中.BD,CE分别是边AC,AB上的中线.点M是三角形BEC的重心点N是三角形BCD的重心 求MN:BC 用反证法证明:在三角形ABC中,若角C是直角,则角B一定是锐角.马上要, 已知 如图,在三角形abc中,AD,AE分别是三角形ABC的高和角平分线,若角B=30°,角C=50°.【1】求角DAE的度数(已解);【2】试写出角DAE与角C-角B有何关系(证明) 如图,已知 ∠ABC=∠ACB CE⊥AB于E BD⊥AC于D △BEC≌△CDB么 用反证法证明:在三角形ABC中,若C=90度,则角B一定是锐角 AD,AE分别是三角形ABC的高和角平分线,若角B=30度,角C等于50度,求角EAD的度数 已知,如图,在等边△ABC中,点D,E分别在BC,AC上BD=CE,AD与BE交与F.求:如果AB=12,BD=4,求S△BDF:S△BEC 已知三角形ABC,角ABC分别对应边abc 且1/a+1/c=2/b.证明角B是锐角 三角形ABC中,AD、AE分别是三角形ABC的高和角平分线,∠C=60°∠B=28°求∠DAE 如图,在△abc中,ab=ac,bd=cf,be=cd,∠fde=58°求∠c的度数 已知三角形ABC三边abc的倒数成等差数列,证明:角B为锐角 已知,如图在三角形ABC中,AD,AE分别是三角形ABC的高和角平分线,若∠B=30度,∠C=50度.①求∠DAE的度数②试写出∠DAE与∠C-∠B有何关系(不必证明) 三角形ABC中,AB=AC,BD=CF,BE=CD,角FDE=58度求角A图 在锐角三角形abc中,角A,B,C的对边为a,b,c且(且(2a-c)cosB=bcosC ⑴求角b大小 ⑵设向量m=(sinA,1),n=(3,cos2A),求向量m*向量n的范围. 在△ABC中,∠B>∠C,AD为三角形的角平分线,AE为高线试说明∠DAE=1/2(∠B-∠C) 如图在△ABC中,点D,E,F分别在BC,AB,AC上,且BD=BE,CD=CF,∠A=70°,求∠FDE的度数 如图,已知锐角三角形ABC中,角A,角B,角C的对边分别是a,b,c.(1)试说明S△ABC=1/2absinC (2)若a=30cm,b=36cm,∠C=30°,求△ABC的面积 如图,在三角形ABC中,AD是BC边上的高,AE是三角形ABC的角平分线.若角B等于α,角C等如图,在△ABC中,AD是BC边上的高,AE是△ABC的角平分线。若∠B等于α,∠C等于β(α<β),用含α,β的代数式来表示
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn