社区
Windows SDK/API
帖子详情
哪位大侠可以给我一个完整的isapi读写cookie范例程序?
yuol
2002-08-20 03:25:37
我在网络编程方面比较薄弱,希望能学习一些相关的知识。哪位大侠可以给我一个完整的isapi读写cookie范例程序?as soon as you can.
...全文
130
4
打赏
收藏
哪位大侠可以给我一个完整的isapi读写cookie范例程序?
我在网络编程方面比较薄弱,希望能学习一些相关的知识。哪位大侠可以给我一个完整的isapi读写cookie范例程序?as soon as you can.
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Drate
2003-01-11
打赏
举报
回复
Delphi 3中Cookie的建立和使用
---- Cookies 是 一 种Web 服 务 器 在 客 户 端 存 储 和 返 回 信 息 的 机 制, 这 种 简 单 的、 永 久 的 和 基 于 客 户 端 的 状 态 信 息 大 大 的 扩 充 了 基 于Web 的 客 户/ 服 务 器(Client/Server) 应 用 程 序 的 能 力。 因 此 广 泛 应 用 在 大 量 的 实 际 中, 例 如 所 有 订 阅Microsoft 公 司 的MSDN 的 用 户、 访 问 过Borland Online 的 用 户, 都 会 在 本 地 存 储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 调 试 通 过)
--------------------------------------------------------------------------------
中国计算机世界出版服务公司版权所有
Drate
2003-01-11
打赏
举报
回复
http://delphi.about.com/library/bluc/text/uc060901i.htm
安优小青和他的程序生活
2003-01-11
打赏
举报
回复
begin //// 写入cookies ////
l_rights :=query2.fieldbyname('U_rights').asstring;
l_username:=query2.fieldbyname('u_dispname').asstring;
list.add('curr_userID='+l_user);
list.Add('curr_password='+l_password);
list.add('curr_rights='+l_rights);
list.add('curr_userName='+l_username);
//response.Content:=query2.fieldbyname('U_DID').ASSTRING;
response.SetCookieField(list,'','',Now+1,false);
list.free;
end;
////读出/////
L_userRight:=Cust_request.CookieFields.Values['curr_Rights'];
...........
.........
///////////////
yuol
2002-08-20
打赏
举报
回复
有请发到yuol@sina.com,谢谢
WEB开发文档2 总结
http://blog.donews.com/lvjiyong/archive/2006/06/29/931071.aspx 怎样将后台生成的在内存中的图象显示到客户端 Microsoft IE WebControls下载地址 如何在DATAGRID中使用JAVASCRIPT脚本控制 DataGrid中连接到下一页显示数据 下载中文名
joyfire linux笔记 感谢原作者
内核分析
目 录
index.html更新记录发布申明GPLGFDL系统管理
程序
编写内核分析启动启动步骤setup.shead.sbootsect.scompressed/misc.csetup.txtbootsect.txt用网卡从并口启动(I386)内核解压中断软中断驱动中断硬件中断 from aka定时器代码分析from lisologindex内部中断外部中断后续处理内存用户态内核页目录的初始化内核线程页目录的借用用户进程内核页目录的建立内核页目录的同步内存管理
EveryDay笔记
模板方法模式 我们大多数情况下,都是使用抽象工厂和简单工厂。简单工厂用来创建工厂,抽象工厂创建产品。 工厂的作用,就是创建接口。 无论是简单工厂模式、工厂模式还是抽象工厂模式,它们本质上都是将不变的部分提取出来 ,将可变的部分留作接口,以达到最大程度上的复用 梦想之歌 【世界500强推崇的6大员工思维】①为他人工作,也是为自己工作;②公司付给你金钱,工 作...
linux相关的东东,来自dbanotes
原贴:http://www.dbanotes.net/MT/mt-search.cgiSearch this siteMatching entries matching “linux” from DBA notes Fotolog.com 的技术信息拾零尽管是世界上最大的图片服务网站, Fotolog.com 在国内的名气并不是很
基于改进下垂控制的微电网控制研究(Simulink仿真实现)
基于改进下垂控制的微电网控制研究(Simulink仿真实现)内容概要:本文围绕“基于改进下垂控制的微电网控制研究”展开,利用Simulink工具进行系统建模仿真,重点探讨了传统下垂控制在微电网应用中的局限性,并提出相应的改进策略以提升功率分配精度与系统稳定性。研究涵盖了微电网的基本架构、分布式电源控制策略、改进下垂控制算法的设计与实现,以及在不同工况下的仿真验证,有效解决了功率均分不均、电压频率波动等问题,增强了微电网在孤岛与并网模式下的运行性能。; 适合人群:电气工程、自动化及相关专业的研究生、科研人员及从事微电网控制技术研发的工程师。; 使用场景及目标:适用于微电网控制系统设计、分布式能源管理、电力电子变换器控制策略研究等场景,旨在通过仿真手段掌握改进下垂控制的核心原理,提升微电网的能量管理能力与运行稳定性。; 阅读建议:建议读者结合Simulink模型同步操作,深入理解控制逻辑与参数设计,同时参考文中仿真结果分析,进一步拓展至多微源协调控制与实际工程应用。
Windows SDK/API
1,184
社区成员
22,326
社区内容
发帖
与我相关
我的任务
Windows SDK/API
Delphi Windows SDK/API
复制链接
扫一扫
分享
社区描述
Delphi Windows SDK/API
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章