使用 IntraWeb (33) - Cookie
使用 IntraWeb (33) - Cookie
涂孟超 发表于3年前
使用 IntraWeb (33) - Cookie
  • 发表于 3年前
  • 阅读 6
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 十分钟定制你的第一个小程序>>>   


在 IW.HTTP.Cookie 单元提供有两个相关类: THTTPCookie、TCookieList; 另外 IWServerController 还有一个 CookieOptions 选项.

但实用起来一般用不到它们.

测试:

{读取 Cookie; 放在 OnCreate 中不太合适, 因为在切换页面时, 如果窗口没被销毁时 OnCreate 也不执行}
procedure TIWForm1.IWAppFormRender(Sender: TObject); //OnRender
begin
  IWEdit1.Text := WebApplication.Request.CookieFields.Values['IWEdit1'];
end;

{写入 Cookie; 应该把它放在什么事件中呢? 很伤脑筋, 譬如 OnDestroy 就不大合适, 因为在关掉页面时它并不执行}
procedure TIWForm1.IWEdit1AsyncChange(Sender: TObject; EventParams: TStringList); //IWEdit1.OnAsyncChange
begin
  WebApplication.Response.Cookies.AddCookie('IWEdit1', IWEdit1.Text, '', Now+30); //参数 1: Cookie 名;
                                                                                  //参数 2: Cookie 值;
                                                                                  //参数 3: 有效范围, 空表示当前站点;
                                                                                  //参数 4: 有效时间, Now+30 表示 30 天内有效
end;

{遍历 Cookie}
procedure TIWForm1.IWButton1Click(Sender: TObject);
var
  str: string;
begin
  for str in WebApplication.Request.CookieFields do IWMemo1.Lines.Add(str);
end;

{关闭窗口}
procedure TIWForm1.IWButton2Click(Sender: TObject);
begin
  WebApplication.Terminate;
end;


共有 人打赏支持
粉丝 13
博文 2004
码字总数 14107
×
涂孟超
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: