0

У меня странная проблема с IE10. IE10 посылает просроченного JSESSIONID куки для аутентификации вызывая входа filure, поэтому я пытаюсь удалить куки JSESSIONID, как показано нижеJavascript для удаления JSESSIONID cookie не работает

function getCookie(cname) { 
     var name = cname + "="; 
     var ca = document.cookie.split(';'); 
     for(var i=0; i<ca.length; i++) { 
      var c = ca[i]; 
      while (c.charAt(0)==' ') c = c.substring(1); 
      if (c.indexOf(name) != -1) { 
       return c.substring(name.length, c.length); 
      } 
     } 
     return ""; 
    } 
    if(getCookie("JSESSIONID")) 
     { 
     var c = getCookie("JSESSIONID") 
      console.log("JSESSIONID = "+ c) 
      document.cookie = c + '=; expires=Thu, 01 Jan 1970 00:00:01 GMT;'; 
     } 

Всякий раз, когда я перезагрузить страницу, я вижу JSESSIONID = A64F97BF3AF662AC56238F2C23D529AA в журнале консоли вместо JSESSIONID = A64F97BF3AF662AC56238F2C23D529AA=; expires=Thu, 01 Jan 1970 00:00:01 GMT;

Может ли кто-нибудь помочь мне решить эту проблему?

ответ

1

Вы сохраняете старое значение cookie и добавляете = до конца. Вы должны установить значение в пустую строку:

document.cookie = 'JSESSIONID=; expires=Thu, 01 Jan 1970 00:00:01 GMT;'; 
+0

Я изменил его на 'document.cookie = 'JSESSIONID =; expires = Thu, 01 Jan 1970 00:00:01 GMT; '; 'но все еще вижу' JSESSIONID = A64F97BF3AF662AC56238F2C23D529AA' в консоли, когда обновляю страницу – RanPaul

+0

См. http://stackoverflow.com/questions/2144386/javascript- delete-cookie – Barmar

+0

Искать '[javascript] delete cookie' для других вопросов, которые показывают, как удалить файлы cookie. – Barmar

Смежные вопросы