UniApplication.Cookies.SetCookie( const ACookieName: string, const AValue: string, AExpires: TDateTime = 0, ASecure: Boolean = False, AHTTPOnly: Boolean = False, const APath: string = '/' )
2避免浏览器刷新要重新登录
办法是通过Cookie实现。
在Loginform登陆成功后,写入Cookie相关数据
Self.Hide; UniApplication.Cookies.SetCookie('UserName', UniMainModule.Operat_Person);
这时候正常情况下,刷新后会显示登陆页面,只需要在Longin的OnShow事件中判断Cookie就可以了,如果Cookie有效,没有过期,检查之前写入的值,代码如下:
if UniApplication.Cookies.GetCookie('UserName')<>'' then begin self.Hide; Main_form := TMainForm.Create(UniApplication); Main_form.Show; end;
3Cookies使用中文汉字的方法
使用UniApplication.Cookies.SetCookie来设置一个中文的Cookies时,然后用UniApplication.Cookies.Values来读取Coolies值时,中文会变成乱码。查询UniGui论坛,得到以下解决方法:
UniApplication.Cookies.SetCookie('name',EncodeString('中文汉字')); //使用 EncodeString函数编码 username := DecodeString(UniApplication.Cookies.Values['name']); //使用 DecodeString解码