我有一个具有以下设置的 Application.cfc:
<cfset THIS.Name = "Test01" />
<cfset THIS.ApplicationTimeout = CreateTimeSpan(1,0,0,0) />
<cfset THIS.sessionTimeout = CreateTimeSpan(1,0,0,0) />
<cfset THIS.clientManagement = false />
<cfset THIS.SessionManagement = true />
<cfset THIS.SetClientCookies = false />
<cfset THIS.setDomainCookies = false />
我尝试发送以下 cookie:
<cfcookie name="CFID" value="#session.CFID#" domain=".test01.domain.net" path="/" expires="never">
<cfcookie name="CFTOKEN" value="#session.CFTOKEN#" domain=".test01.domain.net" path="/" expires="never">
但是,发送到浏览器的是:
Set-Cookie: CFID=6389; Domain=.domain.net; Expires=Fri, 12-Jun-2043 22:14:17 GMT; Path=/; HttpOnly:
Set-Cookie: CFTOKEN=783fa62afecfd571%2DB1069303%2D3048%2D3344%2DAA97ADAF73598FA6; Domain=.domain.net; Expires=Fri, 12-Jun-2043 22:14:17 GMT; Path=/; HttpOnly
无论我在域或路径中输入什么值,它总是发送相同的标头。如果我尝试使用cfheader
它,它只会发送任何内容。我唯一可以让它发送没有域值的 cookie 头的方法是设置SetClientCookies
为 true:
Set-Cookie: CFID=6391; Expires=Fri, 12-Jun-2043 22:21:38 GMT; Path=/; HttpOnly
StructDelete
但是,我不能再通过使用或属性过期来摆脱 cookie CFCookie
(实际上它会创建第二组 cookie)。
我的主要目标是简单地发送没有域的 CFID 和 CFTOKEN cookie(或者至少没有前导句点,例如 test01.domain.net)