IE 浏览器Cookie无法读取的解决方法

知道91 | JS | 2018-04-03 | 阅读:501

IE浏览器向来是前端开发者的噩梦,今天遇到一个问题就是在IE浏览器中的cookie无法读取,无论是在前端还是在后端服务器Request中都无法读取Cookie,找了好久才发现问题,原来是IE中Cookie总的大小超出了浏览器所规定的限度,然后虽然可以在浏览器中看到cookie,但是却取不到cookie。

IE 浏览器Cookie无法读取的解决方法

浏览器cookie个数限制

浏览器对于同一个域名的cookie数是有限制的,各浏览器限制如下:

  • IE cookie限制为每个域名50个

  • Firefox每个域名cookie限制为50个

  • Opera每个域名cookie限制为30个

  • Safari/WebKit没有cookie限制。但是如果cookie很多,则会使header大小超过服务器的处理的限制,会导致错误发生


浏览器cookie总大小限制

不同浏览器不仅cookie的个数有限制,而且浏览器cookie总的大小也是有限制的,cookie的长度超出了浏览器的限制就会导致取不到cookie的值,各个浏览器的cookie总大小限制如下:

  • Firefox、Safari允许cookie限制为4097个字节,包括名(name)、值(value)和等号

  • IE浏览器限制cookie总大小为4095个字节,包括:名(name)、值(value)和等号

  • Opera限制cookie总大小为4095个字节,包括:名(name)、值(value)和等号


以上就是关于cookie大小超出长度导致取不到值的原因。