高分求 cgi使用cookie验证登录的问题

skyctr 2009-01-14 12:11:07
最近用CGI做了个嵌入式web,使用cookie验证登录,遇到一问题:登录后,已经生成一个有效COOKIE,下次再浏览系统时,不通过用户口令就登录了,如果设置了cookie的有效时间,但在该有效期内关掉浏览器,再访问也同样不通过用户口令就登录了。
请问各位大大,有什么方法可以在退出时(直接关掉浏览器)清除该cookie呢 或提供另一有效安全的登录验证例子。高分酬谢!!
...全文
288 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
laj0218 2009-09-04
  • 打赏
  • 举报
回复
偶也只能得到一个值,郁闷
GkfSyser 2009-01-14
  • 打赏
  • 举报
回复
你主程序是C++吗 那直接用个event同步这个事件
skyctr 2009-01-14
  • 打赏
  • 举报
回复
谢绝 三言两语灌水
GkfSyser 2009-01-14
  • 打赏
  • 举报
回复
判断关闭浏览器的事件 清除掉cookie
bj890 2009-01-14
  • 打赏
  • 举报
回复
gz
skyctr 2009-01-14
  • 打赏
  • 举报
回复
非C#,非asp.net的做法
GkfSyser 2009-01-14
  • 打赏
  • 举报
回复
用户第一次登陆把用户名存在Session里,再登陆的时候就这样做,因为Session是存在在服务端的,关闭浏览器Session就清除了

protected void Page_Load(object sender, EventArgs e)
{
if (Session["AdminName"] == null)
{
Response.Redirect("adminlogin.aspx");
}
}
skyctr 2009-01-14
  • 打赏
  • 举报
回复
cgi貌似没有Session的
GkfSyser 2009-01-14
  • 打赏
  • 举报
回复
Session
skyctr 2009-01-14
  • 打赏
  • 举报
回复
已经初步解决,感谢大家提供思路。
我的做法是,不设置cookie的expires (过期参数)当关掉浏览器,cookie的生命周期跟着浏览器进程结束掉,
下次再浏览WEB就必须重登录了,达到模仿Session的效果。
但是新的问题是,设置cookie时为何只能设置一个name值呢?使用printf("cookie %s",getenv("HTTP_COOKIE"));
得到的只有第一 值~~~~~不解中~~~
skyctr 2009-01-14
  • 打赏
  • 举报
回复
后台语言是C

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧