cookie值中包含等号、空格、分号等特殊字符的处理
当cookie中包含有等号、空格、分号等特殊字符时,可能会导致数据丢失、或者不能解析的错误,一个较好的解决办法就是:在将cookie值写入客户端浏览器之前,首先进行URLEncode编码,读取cookie时,进行URLDecode即可。
?
php
提供了2种设置cookie的方法,setcookie与setrawcookie,
二者的区别是:前者会自动对cookie值进行URL编码,而后者不会进行URL编码。
php通过$_COOKIE取得客户端发送到服务器的cookie信息(不需要进行URLDecode操作)。
?
java
通过HttpServletResponse addCookie(Cookie cookie)向客户端写cookie信息;
通过HttpServletRequest ?getCookies()读取cookie。
通过URLEncoder.encode(String s)对URL进行编码。
通过URLDecoder.decode(String s)对URL进行解码。
?
javascript
通过encodeURIComponent(URIstring)对URL进行编码
decodeURIComponent() 函数可对 encodeURIComponent() 函数编码的 URI 进行解码
?
.NET
Server.URLEncode
Server.URLDecode