Coldfusion StructDelete创建空白值

问题描述:

我正在使用Codlfusion 9的StructDelete()方法从cookie中删除值。但是,使用Coldfusion StructDelete创建空白值

StructDelete(cookie,"selector12") 

后,我得到的[空字符串]一个值cookie.selector12尽管删除

这是我使用的代码:

<cfdump var="#cookie#"> 
<!--- kill any existing selector cookie when looking at a profile ---> 
<cfset structDelete(cookie,'selector#URL.clk#')> 
<cfdump var="selector#URL.clk#"> 
<cfdump var="#cookie#"> 

给出以下输出:

Screen shot of cookie cfdumps

StructDelete实际上是否只设置空值?还是我错过了一些明显和简单......再次

StructDelete()的行为时,应用到COOKIE结构推动下头到浏览器:

Set-Cookie SELECTOR12=;expires=Wed, 14-Dec-2011 10:06:02 GMT;path=/ 

又将(对于这该请求的剩余生命周期)会生成一个空值的浏览器cookie - 它模仿您在COOKIE结构上调用cfdump时看到的行为。

这只是处理COOKIE结构的一个副作用,它实际上包含了对浏览器cookie的访问 - 因此受到cookie在浏览器中定义/管理方式的限制。

+0

谢谢福尔摩斯。在那里接受你的名字。我想我得解决那个问题,欢呼。 – 2011-12-14 17:13:40