欢迎光临
我们一直在努力

客户端Cookie中文编程(下)

建站超值云服务器,限时71元/月

   例如你要写入的cookie内容是"一顶abc",经过codecookie变为"99a98a97a-31029a26432a"(基于安全考虑,将字符串反转),再经过escape编码后变为"99a98a97a%2d31029a26432a"(escape编码将除字母和数字以外的字符转换为十六进制%xx的形式),注意分隔符不能选%,d和数字。当然,如果有类似密码的重要信息,还需要在加密上再强化一下。因为写入cookie的一般都是短信息,编码后增加的一些字节可忽略不计。下面的javascript读写cookie函数中就加入了以上的中文支持。

function setcookie(name,value,expires)
{
 var exp=new date();
 exp.settime(exp.gettime()+expires*60*1000);
 document.cookie=name+"="+escape(codecookie(value))+" ; expires="+exp.togmtstring()+" ; path=/";
}

function getcookie (name)
{
 var strarg=name+"=";
 var narglen=strarg.length;
 var ncookielen=document.cookie.length;
 var nend;
 var i=0;
 var j;

while (i$#@60;ncookielen)
{
 j=i+narglen;
 if (document.cookie.substring(i,j)==strarg)
{
 nend=document.cookie.indexof (";",j);
 if (nend==-1) nend=document.cookie.length;
 return decodecookie(unescape(document.cookie.substring(j,nend)));
}
 i=document.cookie.indexof(" ",i)+1;
 if (i==0) break;
}
 return null;
}

  如果用cgi程序写入中文cookie,客户端读取。如在asp里,可以先使用前述的编码函数后,再用response写入,例如:response.cookies("name")=codecookie("张三")至此,中文cookie的问题基本解决。

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 客户端Cookie中文编程(下)
分享到: 更多 (0)

相关推荐

  • 暂无文章