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

Delphi 3中Cookie的建立使用

HTML文档下载 WORD文档下载 PDF文档下载
Delphi 3中Cookie的建立使用

Cookies是一种Web服务器在客户端存储和返回信息的机制

这种简单的、永久的和基于客 户端的状态信息大大的扩充了基于Web的客户/服务器(Client/Server)应用程序的能力。 因此

广泛应用在大量的实际中,例如所有订阅Microsoft公司的MSDN的用户、访问过Borland

Online的用户,以及访问过我的主页(http://www.nease.net/~borland)的用户都会在本 地存储

Cookie,以便下次访问时提供上次访问的记录。

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调试通过)

仿Google Now和Siri?微软WP8.1将推语音助手Cortana NodeJS无所不能:细数10个令人惊讶的NodeJS开源项目 【快讯】18-19日,亚马逊AWS负责人Andy Jassy会在北京说什么,做什么? 数据库未来的5大预测 华为王丰谈华为一体机三大优势 FusionCube SQL Server针对Windows集群加速 浏览器基准测试:IE11成绩惊人 移动开发工具访谈《近匠》第02期:梆梆安全——APP安全之道 罗永浩:ROM创业,锤子科技A轮融资7000万 独立开发者的自白:Objective-C最糟糕的13件事 回顾Google这一年——Android篇 百度手机卫士正式发布 “防吸费”功能全球首创 2013年平板电脑市场竞争回顾 Apple太阳能数据中心进展顺利,但却在税负减免上备受争议 一名开发者的年度回顾 智能手表Pebble明年初推应用商店 开发者今日起可提交应用 够快科技推出企业级云存储服务“够快云库” 项目开发中,质量和速度哪个更重要? 亚马逊AWS落地中国,云计算产业圈集体发力 Node.js 2013年大事记 【开源推荐】ThinkPHP:大道至简,让Web开发更简单 IE11中的WebGL探秘:渲染速度超Chrome 数据驱动智能:百度在计算广告学领域的技术突破 UX设计师和软件开发者,谁将是2014年的老大? 爸爸去哪儿:开发知名题材手游压力山大 多平台同步 谈IE11全新功能 高通副总裁沈劲:移动是产生变革的强大原动力 高性能、高流量Java Web站点打造的22条建议 云巅:第三代虚拟技术+搜索引擎+乐高理念打造分布式桌面云 Intel:从“芯”构建下一代数据中心 WhatsApp:50名员工,月4亿活跃用户,日160亿条消息和5亿张图片 三星Galaxy Gear智能手表失利 需改进的8个方面 edit的text读取 关于ocx的问题? 怎样将一个文本文件以二进制的形式显示 请大家帮我一下!! 怎么破解Email密码? 国内手机及PDA大都用的是哪个操作系统?Palm? 如何是MEMO中增加一行后光标保持在最后位置? vb.net怎样选定word中表格的某一行? ado+intraweb中如何调用coInitialize? 寻找最恶心的笑话 一些对未来的思索、问题,各位来谈谈 有谁知道用哪款打印机比较好呢? 关于类和接口设计问题 如何能把98 聯入2000 如何做一个后台管理-数据库备份程序 如果我用一个Winsock(index)控件数组。Winsock(1)、Winsock(2)同时调用一个延时函数会出什么问题吗? 已知表中字段ID的值,如何定位到这个字段? 谁知道为什么会出这种错误fatal error C1004: unexpected end of file found 小小问题,也有小小的分,不成敬意。 visio ,rose ,ERwin 他们各自的用途是什么,有什么区别呀? Oracle安装的问题——寻求帮忙!!!! 请问Crystal(水晶)报表如何对TextBox进行动态绑定字段? 如何设定mapx图层的颜色 对汇编的渴望! 谁有Asp做的网站?100分奉上! 都进来看看 vc新兵问函数调用菜鸟问题 紧急求救!!!! 谁有delphi关于ado编程 的资料啊(要详细一点的) TreeView的问题,很实在的问题。 关于在PB上实现错误事件处理!!! 关于组件的停靠 用VB.NET连接数据库老是连不了,快精神分裂了,救命啊! 关于SendMessage(高分相送,紧急) 急!!!高手进! 在查找结果中如果某一字段的值相等,只取出其中一条的问题! squid的安装问题???????????????????? SQL语句问题? 冒昧求救,光驱不能使用,不能boot 我的主机总收到外面发的广告信息? 高分求助急!!! 见鬼了,我添加一个TServerSocket控件,然后编译出现:Declaration terminate incorrectly 有谁知道用哪款打印机比较好呢? 按钮BitBtn1上有图片,在图片上写字的问题。(在先给分!) cystal reports 8.5 english显示繁体问题,急,等待 Unix下用什么源代码检测工具比较好? 我的电脑出什么问题了?各位帮帮忙 界面导航如何分类? 怎样得到本机的网卡号??? %¥#问个小问题,知道的都来抢分啊 谁知道哪儿有支持认证的SMTP组件下载? "赤橙黄绿青蓝紫,"的下半句是什么 斐林试剂测什么 纳兰性德《长相思》的诗意?纳兰性德这位诗人写的《长相思》的诗意 高二化学复习课 [高中化学]求烃的衍生物(含羟基、卤素原子、酯基等)的命名方法(包括怎样定主链、标号等).谢! 《长相思》纳兰性德诗意要少点,马上抢答 420斤40度的水温度下降到35度的时候能使3000斤30度的水提高多少度? 甲、乙两个定值电阻阻值之比为4:1,通电时间之比为4:1,电流通过它们产生的热量之比 测量的等级分化问题高级工等于助理工程师吗?技师等于工程师吗?高级工程师上面还有吗?给我个从低到高的顺序谢谢 如何提高3000米速度三千米已经练了很久了,最近运动会,可是这几天跑3200成绩总是在14分左右,怎么提高速度啊,提供点给力的方法啊啊啊啊~ 所谓的天涯海角在哪里?那至死不渝的爱是否还存在.天涯海角在又哪里? 3角函数.答案看不懂.帮忙解释下蓝色画线的. 查找诗句例子:一个老人与一个小伙子比赛诗文,老人赢了!请写出有关年老却不输年轻的诗句或知识渊博的诗句 爱的距离有多遥远谢谢了,大神帮忙啊 有关文言文的题目指出下列各具属于何种文言句式:(1)此三子者,皆布衣之士也( ) (2)士卒多为用者( )(3) 此则岳阳楼之大观也( ) (4) 而城居者未之知也( ) "所以兴怀,其致一也" 的“所以”怎么解释?《兰亭集序》中的 天涯何处无芳草的下一句是什么求大神帮助 关于鱼类呼吸时的逆流气体交换求解释...血流方向和水流方向相反,为什么有利于吸收氧气? 所以兴怀, 多远的距离叫做遥远? 这个函数看不懂#include using namespace std; void GetMemory(char **p) //为什么用*p不行用**p就可以了?{*p = (char *)malloc(100);}void main(void){char *str = NULL;GetMemory(&str); // 2-甲基丙烷中的“2-”是什么意思? 从兰亭集序中找出两句话来说明“虽世殊事异,所以兴怀,其致一也” 距离太遥远,怎样才能靠得更近?不同的地方,不同的事业. 2 甲基丙烷的二溴代物有几种?三个甲基是不是都一样 九龙壁,文中先写九龙壁的 ,在写 ,最后写 . 如图,电源电压不变,R1=5,R2=25.若电表甲,乙都是电压表,当开关闭合时,U甲比U乙是多少.若电表甲,乙都是电流表,当开关S断开时,I甲比I乙=多少 参与身体全部物质交换的是()参与身体全部物质交换的是() A.体循环B.血液循环另一种为什么不是? 短文先写九龙壁的( ),在写( ),最后写( ) Helen had to shout ( ) above the sound of the music.A.making herself hear B.to make herself hearC.making herself heard D.to make herself heard 女孩喝酒对身体有什么严重的伤害 九龙壁 文中写九龙壁的( ),再写龙的( ),最后写( ).九龙壁文中写九龙壁的( ),再写龙的( ),最后写( ). 怎么判断能发生酯化反应 2,2-二甲基丙烷和2-甲基丙烷熔沸点问题!当C数相同时,比较支链(或对称性),越多,熔沸点越小.答案1大于2,但我觉得1的支链更多啊,( CH3-C(CH3)2-CH3)也更对称,为什么答案是2更小? 文中先写九龙壁的_____________,再写_____________,最后写_____________. 怎么看能不能发生酯化反应 赤橙黄绿青蓝紫怎么样 短文先写九龙壁的()再写()最后写 在右图所示的电路中,当开关都闭合后,电压表测的是什么?我想要解法 家庭用电和煤气那样划算?现在煤气家庭用大瓶的要一百多一瓶,电也要1块钱一度,平时就是洗澡烧水和煮吃的,用煤气划算还是用电划算?我说的是普遍情况下,你是怎么计算的? 钠 碳 硫 氮 氯五种元素原子半径从大到小的顺序是? 王老师用一根48cm的铁丝做一个长方体框架,使长宽高的比是2:1:3.这个长方体的体积和面积各是多少 用电还是用煤气实惠?我租房那里,电费1.5元一度,煤气大罐的130元一罐,请问,煮菜做饭烧水用电实惠还是用煤气实惠? 求 彼光将有内志,未可说以外事.的译文 古文字义如何查询? 文言文工作中的工是什么意思? 把文言文翻译成现代汉语:彼光将有内志,未可说以外事 海贼王中出现过哪些自然系恶魔果实比如说水啊,火啊,风啊,等等最好还要知道是谁 吴老师用72厘米的铁丝做开一个长方形的教具,长20厘米,宽多少厘米 2.如图所示,在固定的圆锥形漏斗的光滑内壁上,有两个质量相等的小物块A和B,它们分别紧贴漏斗的内壁.在不同的水平面上做匀速圆周运动,则以下叙述正确的是( )A.物块A的线速度大于物块B的 清朝康熙时有没有一个叫纳兰容若的人 最新中国十大油漆排名榜 赤橙黄绿青蓝紫的下一句是什么? 1.全诗中没有"望"字但处处写望,距离是自______而______;时间是从_______至________,并由______遥想将_______.2."春望"这一题目的意思是______________________________________.3.诗中哪几联照应了题目中的"春"字?4 赤橙黄绿青蓝紫,后面一句是什么 一排电线杆,相邻两根均相距45米,如果改成相距60米,且起点第一根电线杆位置不变,那么从起点开始到第一次不必移动位置的那根电线杆之间的距离是多少米? 问几道初中的文言题!谁会?1.杜甫是唐代大诗人,字______,他被称做"______",其诗作被称为"______",都收集在______.2."三吏"是指杜甫写的______,______,______;"三别"是指他写的______,______,______;"三吏""三别" {2sin2a\(1+cos2a)}*(cos^a/cos2a)= 求大神帮翻译,很急的事,各位帮帮忙吧以下文段 两个夜店老板有一天突然厌倦了声色犬马,他们想起来孩提时代的纯真回忆,于是想要建造一个小火车的世界.所有的人都觉得他们异想天开,但事 纳兰性德 长相思的诗意是什么?wu 何亚非:美国亚太再平衡战略的经济抓手香港保安局局长:马尼拉人质事件处理步官员“一票否决”制被指滥用 想装什么养老金双轨制改革几无进展 并轨试点已人民日报:年底需防止各地为GDP\"教育经费管理存在多项问题 回应质疑制北京雾霾刚去 寒衣节不少市民当街焚烧浙江部分行政区划调整 绍兴县上虞市撤菲律宾副总统:人质事件总统不可代表整曝汪峰或哈林明年退出好声音 女导师不停摆还卖票3万人受困 台高铁再“出包民进党台北市长初选 五月天主唱阿信被田径队进行备战里约动员 刘翔红军装亮瞭望:把巩固党的执政基础作为政治责任儿子常在小区网吧过夜 其母向警方投诉广东400村官旁听贪贿案庭审 纪委书经济复苏强于预期 10月PMI创18柯文哲批民进党“乱邦” 苏贞昌:不必苗族大妈不识总书记:“怎么称呼您?”台湾花莲发生4.7级地震 民众再度心香港名医庄善春捐资120万修建华侨大兰州千余警力24小时武装巡控人小鬼大王诗龄首登国际T台联合国报告说未来两年全球经济将继续好埃及总统选举塞西获94.5%海外选票联合国报告说未来两年全球经济将继续好埃及总统选举:前军方领导人塞西获94香港音乐人刘卓辉来渝签售中行解客户燃眉之急未来三天天气继续顽皮以真诚服务温暖客户那个小孩长大了帮农转非失业人员就业创业“天翼蓝光”开启在线影音高清时代拍摄达芙妮首支广告大片加菲猫首次登陆重庆下周五 城市乐跑赛跑入重庆国美 3C真低价交行沙支行:微笑服务,从心开始细节是赢得客户的关键浙商银行成功发行 扩围后首单同业存单中渝梧桐郡携《莲》震撼献艺
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘