首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >HttpCookie过期和IIS设置

HttpCookie过期和IIS设置
EN

Stack Overflow用户
提问于 2013-08-12 15:28:17
回答 1查看 1.9K关注 0票数 1

我对Cookie的过期日期越来越疯狂了,从概念上讲,它很简单,但是它不在我的服务器上工作。我想那是IIS设置让我发疯了,你觉得呢?

我从MVC 3示例项目开始,我在主控制器中添加了以下代码

代码语言:javascript
复制
  public ActionResult Index()
    {
         var PersistentLogonCookieName = "test";
        var persistentLogon = DateTime.Now.ToLongTimeString(); 
         var persistentLogonCookie = new HttpCookie(PersistentLogonCookieName, persistentLogon);
           persistentLogonCookie.Expires = DateTime.UtcNow.AddDays(2);


        if (Request.Cookies[PersistentLogonCookieName] == null)
        {
            ViewBag.Message = "Cookie NOT Found!";

             persistentLogonCookie.Value = "added" + DateTime.Now.ToLongTimeString();
            Response.Cookies.Add(persistentLogonCookie);
        }
        else
        {
            ViewBag.Message = "Cookie Found!";

            Response.SetCookie(persistentLogonCookie);
        }
        return View();
    }

如果我在本地运行的话,在我发现Cookie的第二个请求之后,它就能正常工作了.如果我在服务器上运行,我总是找不到琦琦.如果我评论persistentLogonCookie.Expires = DateTime.UtcNow.AddDays(2);,它在服务器上也能正常工作。我不知道该怎么想,如果不是,那是我的本地机器和服务器之间的一个不同的IIS设置.在响应头中,我有:

代码语言:javascript
复制
Set-Cookie  test=added4:23:39 PM; expires=Wed, 14-Aug-2013 15:23:39 GMT; path=/

但是,当我在服务器上测试cookie时,cookie不会添加到以下请求的cookie集合中,并且当我使用本地IIS进行测试时,cookie集合会被添加到cookie集合中.任何建议都将不胜感激..。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-12 17:12:46

抱歉,我发现问题出在哪里.服务器在响应日期中返回错误的日期.到期日期必须在响应日期之后,才能将cookie添加到cookie集合中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18190895

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档