这是JavaScript代码:
var tmp = escape(document.cookie.match(/TestSession=[^;]+(;|$)/)[0]);`
使用MVC,如果我有这个功能:
var cookie = new HttpCookie("TestSession", "SomeValue") {
Expires = DateTime.Now.AddYears(1)
};
但如果我补充:
cookie.Domain = "Test.com";
或
{ Expires = DateTime.Now.AddYears(1), Domain = "Test.com" };
JavaScript的tmp
为null
或undefined
。
有什么想法吗?
答案 0 :(得分:1)
请记住,你cannot access cookies of another domain。因此,如果您在与 test.com 不同的域下运行该网站,您将无法访问该Cookie。
注意:从http://localhost
开始工作时也是如此 - 因为localhost
和test.com
不是同一个来源。
要解决此问题,您可以检查服务器上的当前主机并相应地设置domain
。
更新 (评论后)
如 Andrei 所述,您还可以将主机条目添加到将test.com
映射到localhost
的本地主机文件中。但是,当您需要导航到网站的生产版本时,您需要记住将其注释掉。