2015-09-22 4 views
0

У меня есть cookie, который я установил с помощью java-скрипта, тогда я пытаюсь сделать его истекшим после его использования с помощью ASP.NET Я проверил файл cookie с помощью firefox, он показал, что это дата истечения срока действия установлена ​​на сеанс, хотя я установил дату истечения срока действия, как вы можете видеть ниже. Я пробовал удалять файлы cookie без необходимости, они все равно создаются с тем же состоянием и не видят, что они хотят быть истекли.Cookie не хочет истекать ASP.NET

java script

 function dateSelected(sender, eventArg) { 
     var expire = new Date(); 
     expire.setDate(expire.getTime() + (5 * 24 * 60 * 60 * 1000)); 
     var element = sender._clientStateFieldID; 
     if (element == "txtenddate_ClientState") 
      document.cookie = "EndDate=" + eventArg.get_newValue() + ";expires=" + expire.toUTCString() + ";path=/"; 
     else 
      document.cookie = "StartDate=" + eventArg.get_newValue() + ";expires=" + expire.toUTCString() + ";path=/"; 
    } 

ASP.NET C#

StringBuilder url = new StringBuilder(); 
url.Append("&StartDate="); 
url.Append(Request.Cookies["StartDate"].Value); 
url.Append("&EndDate="); 
url.Append(Request.Cookies["EndDate"].Value); 
Request.Cookies["StartDate"].Expires = DateTime.Now.AddDays(-1d); 
Request.Cookies["EndDate"].Expires = DateTime.Now.AddDays(-1d); 
Request.Cookies.Add(Request.Cookies["EndDate"]); 
Request.Cookies.Add(Request.Cookies["StartDate"]); 
Server.Transfer(url.ToString()); 
+0

Response.Cookies.Add (Request.Cookies ["EndDate"]); Response.Cookies.Add (Request.Cookies ["StartDate"]); –

ответ

0

Хотя я не объясняю, почему дата истечения срока действия cookie была установлена ​​на сеанс, хотя я явно установил его на определенную дату , фактическая проблема была решена путем корректировки двух строк добавления для использования ответа вместо коллекции запроса просто как Andrew предложил

Response.Cookies.Add(Request.Cookies["EndDate"]); 
Response.Cookies.Add(Request.Cookies["StartDate"]); 
Смежные вопросы