Bri*_*one 7 cookies subdomain coldfusion cross-domain
我需要使用ColdFusion 从http://origin.domain.com上读取在https://sub1.domain.com上创建的cookie .我已经看到很多关于如何使用CFCOOKIE在子域中创建cookie的信息,但我不知道如何访问已经存在的cookie.
HTTPS会不会让这个变得不可能?
附录:下面的检查答案正确解决了上述问题.就我而言,它没有用.我应该解释一下:sub1.domain.com上的cookie是由托管的第三方产品创建的 - 不是用coldfusion编写的,不在我的控制之下.
这真的很容易.创建cookie时,请为其指定与您的域相同的域属性.要记住的重要部分是它必须有一个前导点.
<cfcookie name="mycookie" value="myvalue" domain=".mydomain.com" path="/" />
Run Code Online (Sandbox Code Playgroud)
前导点告诉浏览器将cookie发送到mydomain.com的任何子域,其中包括sub.mydomain.com和blah.mydomain.com.
然后,您就可以像访问任何其他cookie一样从任何子域访问cookie:
<cfset thevalue = cookie.mycookie />
Run Code Online (Sandbox Code Playgroud)
您应该将此作为支持旧版浏览器的最佳做法.
以下是RFC2109:可能影响旧浏览器的HTTP状态管理机制的声明
"为了防止可能的安全或隐私侵犯,用户代理拒绝cookie(不应存储其信息),如果......域属性的值不包含嵌入点或不以点开头."
我认为这被RFC 2965:HTTP状态管理机制所取代
"Domain = value OPTIONAL.Domain属性的值指定cookie有效的域.如果明确指定的值不以点开头,则用户代理提供前导点."
这解释了为什么它可能适合你,大概是一个现代浏览器.我仍然建议你添加它.
| 归档时间: |
|
| 查看次数: |
2768 次 |
| 最近记录: |