当前位置: 代码迷 >> Web前端 >> cookie值中包孕等号、空格、分号等特殊字符的处理
  详细解决方案

cookie值中包孕等号、空格、分号等特殊字符的处理

热度:159   发布时间:2013-01-19 11:41:36.0
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

  相关解决方案