【问题标题】:ColdFusion check when cookie expiresColdFusion 检查 cookie 何时过期
【发布时间】:2020-09-23 10:09:17
【问题描述】:

是否可以检查 cookie 何时到期?我尝试了以下方法:

首先我设置了三个cookie:

<cfcookie name="test1" value="" expires="10" />
<cfcookie name="test2" value="" expires="never" />
<cfcookie name="test3" value="" expires="now" />

然后在另一个页面上检查 cookie 数据:

<cfset cookies = getPageContext().getRequest().getCookies()>
<Cfoutput>
    <cfloop index="c" array="#cookies#">#c.getName()#:#c.getMaxAge()#<br> 
    </cfloop>
</Cfoutput>

但是,MaxAge 为所有 cookie 返回 -1,而不是实际的到期日期。我怎样才能得到实际的到期日期?

【问题讨论】:

  • 这个问题在这个stackoverflow.com/questions/14391749/… java 问题中得到了回答。我认为这适用于 ColdFusion。浏览器不会随请求发回 cookie 的到期时间。我们用getCookies 做的是获取浏览器发送的cookies。

标签: coldfusion coldfusion-2016 cfcookie


【解决方案1】:

试图回答这个问题(只是因为这是一个 ColdFusion 问题,我认为在不讨论它的情况下将它标记为 Java 问题的副本是不礼貌的。)没有完全抄袭这个 Java answer

getPageContext().getRequest().getCookies() 这基本上可以为您获取浏览器发送到服务器的 cookie。浏览器只发回 cookie 的名称和值。因此,一旦设置了 cookie,服务器就无法知道该 Cookie 何时到期。设置时,您可能需要在服务器端保存 cookie 过期时间。

【讨论】:

    猜你喜欢
    • 2020-11-22
    • 2012-07-25
    • 1970-01-01
    • 1970-01-01
    • 2018-05-29
    • 2017-06-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多