cookie值在document.cookie中编码

时间:2015-09-29 15:42:33

标签: javascript php html cookies

我有一个价值

的cookie
emailID=a1%40a.comSEPmaths=0SEPphysics=0SEPchemistry=0SEPbotany=0SEPzoology=0SEPta
mil=0SEPenglish=0SEPpolity=0SEPgk=0SEPhistory=0

但是document.cookie.split('; ')会返回

 subs=emailID%3Da1%2540a.comSEPmaths%3D0SEPphysics%3D0SEPchemistry%3D0SEPbotany%3
 D0SEPzoology%3D0SEPtamil%3D0SEPenglish%3D0SEPpolity%3D0SEPgk%3D0SEPhistory%3D0"

为什么编码?如果它没有编码,它是什么?如何获得我在浏览器中的cookies选项卡下看到的确切值。

1 个答案:

答案 0 :(得分:2)

它被编码,因为cookie值允许only certain characters

 cookie-value      = *cookie-octet / ( DQUOTE *cookie-octet DQUOTE )
 cookie-octet      = %x21 / %x23-2B / %x2D-3A / %x3C-5B / %x5D-7E
                       ; US-ASCII characters excluding CTLs,
                       ; whitespace DQUOTE, comma, semicolon,
                       ; and backslash

使用decodeURIComponent对其进行解码。