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

Cookie的建立使用-Delphi资料

HTML文档下载 WORD文档下载 PDF文档下载
Cookie的建立使用-Delphi资料

Delphi 3是Borland公司1997年推出的可视化、面向对象的高效率的快速应用程序开发工具(RAD),提供

了大量的最新功能,例如开发COM/DCOM,一步开发ActiveX对象,多层数据库应用程序MIDAS等,并且使用

Delphi 3开发基于Web服务器的程序,如ISAPI/NSAPI ,Win-CGI,CGI程序都十分方便。

使用Delphi 3开发Web Server程序是非常简单,方便的,因为在Delphi中提供了Web Module、

TWebApplication、TWebRequest、TWebResponse、TPageProducer等大量的对象供使用.对于

Cookie

Delphi3也提供了大量的程序供使用

如TWebResponse.Cookies,TWebResponse.SetCookieField

,TWebRequest.Cookie,TWebRequest.CookieFields,TWebRequest.ExtractCookieFields等,应该是

非常方便。但本人为了实现一功能需要设置Cookie,但是发现使用Delphi提供的SetCookieFields设置不

成功,经研究Delphi 3所带的HttpApp.Pas和IsapiApp.Pas文件发现在中文Windows 95和NT环境下该程序

有错误。 根据Netscape公司的规定

Cookie的格式应为: Set-Cookie: Name=Value; expires=DATA;

Path=PATH; domain=DOMAIN_NAME; secure而且根据规定

日期(DATA)的设置必须满足格式“Wdy

DD-Mon-YYYY HH:MM:SS GMT”

基于RFC822

RFC850

RFC1036和RFC1123等规定,但是检查

HTTPAPP.PAS中的function TCookie.GetHeaderValue: string中为FormatDateTime('"expires="' +

DateFormat + ' "GMT; "'

Expires);

其中const DateFormat = 'ddd

dd mmm yyyy hh:mm:ss'

程序在英文环境中产生的格式是正确的

但是在中文中产生的结果却不对

因为星期和月份都将按照中文的表

示方法:如将11月生产“十一月”中文串,这样在Netscape Navigator和Microsoft Internet Explorer

就不能辨认了。

既然错误在于原VCL未考虑中文环境的问题,所以修改的方法有:1、修改VCL源程序

编译后将dcu文件拷

贝到Lib目录,这样会完全改正错误,这样是最根本的解决方法,但是 如果将源程序放在另一未修改的

Delphi中(例如提供源程序给别人和自己重新安装)编译又将出现问题。2、因为使用并不太多,所以可以将

修改的程序放在自己的程序中,使用 Delphi 3 提供的TWebResponse.SetCustomHeader设置

这样的好处

是将程序放在自己的程序内,重新装Delphi或在另一台计算机上编译的结果也会完全正确。因为Cookie的

目的一般有两种, 一种是在此会话过程中使用,过后不使用,此时不需要Expires段,不会产生时间错误,

可以使用Delphi 3提供的所有Cookie程序;另一种为永久保存,时间一般越长越好,于是可以将时间设置

为2099年二月22日

于是程序中设置Cookie的方法为

:Response.SetCustomHeader('Set-Cookie'

'Name=Value; expires=Sun

22 Feb 2099 08:08:08

GMT'); (注斜体用自己的名称代替,例如设置Count=10,则Name用Count代替,Value 用10代替),这样

就可以建立Cookie了.

以下为建立一个访问计数器的程序,可以参照:

const

LastIp:String='0:0:0:0'; //避免重复计数

Var

S:String;

Count:Integer;

begin

S:=Request.CookieFields.Values['count'];

if S<>'' then begin

try

Count:=StrToInt(S);

Except

Count:=0;

End;

end else Count:=0;

if LastIp<>Request.RemoteAddr then Inc(Count);

LastIp:=Request.RemoteAddr;

Response.SetCustomHeader('Set-Cookie'

'count='+IntToStr(Count)+';

expires=Sun

21 Feb 2010

08:08:08 GMT');

Response.Content:='您是第'+IntToStr(Count)+'来到本页!';

End;

(以上程序用Win95B的个人Web服务器+Netscape Navigator 4.04调试通过)

VB中处理长列表框项的两种方法 VB中多级下拉列表的实现 VB中防止将重复项目添加到列表框控件中 VB中实现菜单分割 VB中实现带预览的对话框 VB中实现同一窗口的多个实例及控件的动态增减 VB中阴影字体的实现 VB自定义数据结构的传输转换 Visual Basic 窗体背景花纹的实现 Visual Basic 中的界面设计原则和编程技巧 Visual Basic 中文本框处理技巧集萃 Visual Basic 中字符淡出淡入的实现 Visual Basic窗体背景花纹的实现 Visual Basic下工具条的制作 Visual Basic中的界面设计原则和编程技巧 Visual Basic中在同一界面输入大量数据的几种方法 VisualBasic中的界面设计原则和编程技巧 VisualBasic中用户界面的设计原则 把 VB 标准的工具栏变成平面式 把窗体卸载干净-VB资料 保持初始的窗体大小-VB资料 编程实现将所有窗口最小化-VB资料 不规则形状窗口详细说明 -VB资料 不用 API ,直接调用关联的程序 -VB资料 处理过程时的鼠标显示 -VB资料 窗口处理技巧大全 -VB资料 窗口事件的发生顺序-VB资料 VB创建不规则窗口 VB创建透明窗体 VB创建位图菜单 VB创建无 Icon 的窗口 求救!!有那位ASP的高手可以帮我编出在dreamweaver mx上可以运行的简单留言板,给分很多的啊,快来帮帮忙了! xp 仍然支持 NetBEUI 协议吗? 关于向型网络架设问题! 我的windows2000怎么了? 我想设定IE的大小,总是有缺憾。 中了什么病毒 请教关于XML验证的问题 高分求MS Systems Management Server 2。0 有会用pgAdminII的没有? 大家一般怎样统计代码行数标准是怎样的 局域网连接的问题(网中网) 寻免费杀毒软件,要能更新的,中英不限。 如何模拟键盘输入。。模拟过程中的一些问题。。有实践的朋友,讨论一下。 一个很笨的问题关于程序中的重新登陆 路过的走过的都进来看看我,珠海的或北京的帮个忙~ 如何让Form2成为Form1的真正子窗体? 对于我来说是个难题,高手请看看。急用。 用Java Applet 进行Web编程时,如何限制输入域中可输入字符的长度!解决后马上给分!!! 用Java Applet 进行Web编程时,如何限制输入域中可输入字符的长度!解决后马上给分!!! ftp可用,但http站点却不能用,为什么?急急急!!! 兄弟寻求ActiveX文档方面的帮助,先谢了 用到水晶报表控件的工程在发布时要用到哪些动态库? 大讨论:到底要不要考高程? 学好c++ builder还要掌握pascal??? 如何做"标签窗口"????请高手明示!! 急救!怎样用shell 命令读取 *.chm 格式的帮助文件? 请教各位高人哪种51单片机抗干扰性能好点。 回答就有高分!一个简单的问题! 急!Word档案变成X档案了!-------请微软专家也过来帮忙 双重系统引导的问题 现在网上还有没有好的免费个人主页空间?最好支持asp等等,空间小点没关系,高分求! 请问什么地方有PPP over Ethernet(PPPoE)协议 技术资料!!! 请问为何我的程序在Release版本下出错? 再帮忙看看这段代码,即使密码正确也显示"错误:请确认阁下的身份!" 怎么回事啊? 请教这个API(ShowWindow)怎么使用? 谁能告诉我 virtual(虚) 析构函数目的何在干什么用的? 救急 装一个rose要多大空间啊 关于CJ60库实现Visual stduio的界面的问题! 请问要实现在空表上建立数据时,如何做到text1.text能显示“1000”,即Number的“标识种子”值! 这个UDL文件错在哪? 推荐一篇文章《麦子的颜色》 大家来灌水. vc service pack? 关于聊天室的界面 c++库函数的头文件有.h和没有有什么区别?为什么c++的库函数在VC很多不能用,怎么办? 可以在dll里面放SDI框架并调用吗? MIDAS中,怎样通过Client.exe生成MS Sql2000数据库?(就像《管家婆》那样,运行一次客户端,输入数据库的名称,就会自动在SQL Server2000 如何查找一个对话框的owner窗口? 我应该选择VC还是C#??? 在系统启动时至少有一个服务或驱动程序产生错误,详细信息,请使用事件查看器查看事件日志 木兰诗读音策勋十二“转”:同“行”十二年:赏赐百千“强”:昨夜见军“帖”:出郭相扶“将”:对镜“帖”花黄:“著”我旧时“裳”: 动物自述作文急需一篇动物自述文章,用第一人称来写的..谢谢,快点 寒假有什么有趣的事情可以做 阅读下面几则诚信小故事从中归纳出重诚信的含义so.cc 还有分清东南西北半球 你在寒假里有什么有趣的事?必须是在寒假里发生的事,一件难以忘记的事,一件有趣的事 宇宙为什么要诞生?是为什么“要”诞生! 地理的经纬度的记算 寒假有趣的事 英语情景对话的几个疑问以下是对话内容:A:What are we going to eat for dinner?B:Whatever meal that you plan on making.A:I thought you were making dinner tonight.B:I do all the cooking.A:Your food tastes so much better than mine.B:Sav 教育我们面对严峻的考验要从容不迫,无所畏惧的古诗名句 叙述抹香鲸的作文怎么写 不是自述(英语)要6年级以下的水平的! 运动会宣传语(为自己班级宣传的,班级名:每篇150字内),越多越好!为我们自己的班级运动员加油之类的宣传语,我们班级名称:)班,不能超过150字,要求语句精炼、优美,不得大量抄袭!越多 英语四级涂卡问题有人能告诉我一些关于英语4级的知识吗,我刚考过,可是答题卡涂的有点不对劲,考生注意事项上说涂卡的时候只要在字母中间划杠就行,但是一般的涂卡都不是这样的啊,现在 如何写英文自述信 帮忙想一个班级宣传语,我是食品班的,急需一条宣传语,积极向上的,10个字以内的. 英语四级涂卡问题!我用的自动2B铅笔 就是笔尖比较宽一点 阅读理解的时候 为了节省时间 我就用笔在答题卡上随便画了一下 做个记号 但是最好忘记涂黑了 机器能不能读的出来?颜色很浅 但 自传式电影 英文怎么说!类似的意思也可以吧 反正表达是一部电影,不过是自传体的,但别给我从句,那个谁都会, 柴达木盆地称为聚宝盘 原因 2010年12月英语四级涂卡问题(在线等)很严肃~英语四级考试的时候,由于我是再最后5分钟,才发现自己没有涂答题卡~当时情急之下,一时慌神,竟然把准考证号写错位了,于是乎,我又把每个数字 帮忙写一篇初一英语作文,要你自己写的!题目是”My mother”,要求是:1、不少于60字 2、使用一般现在时写的时候有些语法不要用错哦! Hao many _____are there at the meeting?选项是A.girl students B.woman teath C.man doctorsD.boys students 动动键盘就OK 英语翻译请写具体一些. 连词成句the when to airport going go you to are 你认为宇宙有起源吗?如果有是怎么样的?你觉得人在宇宙间存在应该是什么样的?也就是说究竟什么才是人的存在,或者说人的使命是什么?人生如何安顿? 用四个字的成语来形容桂林的山? _____are you going to the airport A.How B.When 求高二地理经纬度的相关计算题目,并且要有详细答案. when are we going to come back?的答句是什么? 写答语 1、when are you going?2、how are you going?3、where are you going?4、what are you going to do?5、how is the going?6、where is the going?7、when is the going?8、what is he going to do? 阅读下面几则诚信小故事,从中归纳出“重诚信”的含义 ①春秋时,吴国的季子出使北方,顺道拜访了徐君.徐 when do you plan to come back?when are you going to come back?这两个句子正确吗? are you going to the the airport?填when,how?好难【紧急求助】 一个关于诚信的故事 阅读答案(今天就要)早年,尼泊尔的喜马拉雅山南麓很少有外国人涉足.后来,许多日本人到这里观光旅游,据说这是源于一位少年的诚信.一天,几位日本摄影师请当地一位 ing 英语定语从句the numeber of cities is increasing whose development.先行词是 cities 还是increasing? 这种颜色怎么涂?是用什么笔涂的?我不会涂.我感觉很均匀.也很漂亮.拜托.教教我吧.我明天就要交了、速度啊 有的动植物生长在干旱的环境,它们有什么法宝对抗干旱 初二英语小作文My Mother内容要点:1.我的妈妈是护士,工作很努力2.上个月去北京,抗击SARS3.一个多月没回家4.保护我们免受SARS的侵害5.30——60词即可 做热爱生命的手抄报,最好要用什么笔涂颜色?麻烦大家快一点,急! 怎么理解如果宇宙没有起源?由于星体无穷多,它们发出的光经过无数次叠加传到地球上,必然使地球上的黑夜和白天一样明亮,而这显然是错误的,所以宇宙必须有一个起源.我不明白这段话的"地 When the going gets tough,the tough get going. 给木棒或木条涂颜色最好用什么颜料(是水粉颜色笔还是. 用 how much造句,并用 there are回答 -When Peter ____,he is going to go to a cooking school.-Really?What a strange job.A.gets upB.dresses up C.grows up D.cuts up Canadians speak (English and French)提问括号内部分 ( )( )Canadians( 用于安慰人或不含恶意的小谎言,在英语中叫( )lieA.black B.whiteC.green D.grey 很难理解宇宙的由来 show him your photos when he gets back to school将来时为什么还用gets 求歌名中有lie(谎言)这个词的英文歌越多越好,不过难听的就算了比如ne-yo的lie to me,30 seconds to mars的a beautiful lie... 1昨夜见军帖,可汗大点兵.军书十二卷,卷卷有爷名.2策勋十二转,赏赐百千强.3开我东阁门,坐我西阁床.用了什么修辞方法? When going gets tough,the tough get going!) 我能让舌头颤动发声,但是就是发不出西语中的那种颤音,怎么办? 昨夜见军帖,可汗大点兵,军书 请以My mother likes______写一篇英语小作文 《木兰诗》里“裳”字的读音唧唧复唧唧,木兰当户织,不闻机杼(zhù)声,惟闻女叹息.问女何所思,问女何所忆,女亦无所思,女亦无所忆.昨夜见军帖(tiē),可汗大点兵.军书十二卷,卷卷有爷名,阿爷 How many days there are in a week造句 i really wanna go home ,wanna go home...求翻译 木兰诗中所有字的读音 How many days there are in a week 造句 英语翻译翻译风波的结局是男主角死了么?
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘