兼容性考虑 使用了utf编码 测试通过支持IE及Firefox
jsp 写入中文Cookie
<%@ page contentType=
text/html;charset=utf
pageEncoding=
UTF
%>
<%@ page import=javanet*%>
<%
String usr = 中文cookie测试;
Cookie cookie = new Cookie(usrURLEncoderencode(usrUTF));
cookiesetMaxAge();
cookiesetPath(/);
responseaddCookie(cookie);
%>
javascript 读取中文cookie
<script language=
javascript
>
function readCnCookie(name){ //中文cookie
var strReturn = null;
var tmpreg=new RegExp((^| )+name+=\*([^;|^\]*)(|;|$)gi);
if(tmp=regexec(documentcookie))strReturn=decodeURIComponent(tmp[]);
return strReturn;
}
alert(readCnCookie(usr));
</script>
同样 不管有什么服务端语言 写入cookie 时 把中文使用 URLEncode 就可以和js交互了
在其它的语言环境下实现 new Cookie(usrURLEncoderencode(usrUTF))方法:
ASP: ServerURLEncode(string)
PHP: urlencode($string);
如果编码不对 记得用 iconv 转换一下
例: gb转utf iconv(GBUTF$string);
ASPNET:
SystemWebHttpUtilityUrlEncode(string);
SystemWebHttpUtilityUrlEncode(string UTF);