最近ASP和jS间的汉字Cookie乱码问题一直比较头痛,网上查了好多资料没搞定。
最后还是回归原始方法,找了一个ASP等同于JS escape的函数,在写入Cookie前进行加密,在JS端读取时用unescape解密就没有问题了。
后来一个小问题又困扰好久,在AJAX传入中文参数时没有加上escape进行加密处理,导致ASP获得中文乱码,加入后问题解决了。
附上类似JS的escape函数如下:
Function vbsEscape(str)
dim i,s,c,a s="" For i=1 to Len(str) c=Mid(str,i,1) a=ASCW(c) If (a>=48 and a<=57) or (a>=65 and a<=90) or (a>=97 and a<=122) Then s = s & c ElseIf InStr("@*_+-./",c)>0 Then s = s & c ElseIf a>0 and a<16 Then s = s & "%0" & Hex(a) ElseIf a>=16 and a<256 Then s = s & "%" & Hex(a) Else s = s & "%u" & Hex(a) End If Next vbsEscape = s End Function