[心缘地方]同学录
首页 | 功能说明 | 站长通知 | 最近更新 | 编码查看转换 | 代码下载 | 常见问题及讨论 | 《深入解析ASP核心技术》 | 王小鸭自动发工资条VBA版
登录系统:用户名: 密码: 如果要讨论问题,请先注册。
发表人 主题:encodeURI
嘎嘎,是我
身份:admin
发帖:1438
登陆次数:3287
1F 发表于 2006/11/6 15:45:45
Client:JP 2000P
Server:JP 2000P
(本机访问、异机访问结果一样)

不正常。
Response.Cookies("xx")始终按系统的字符集。
encodeURI的UTF8编码,始终按系统字符集解码。
-----------------------GB---------------------------------
xx=%E6%98%A5%E5%A4%A9ga%20k; username=%8Ft%93Vga+k; 
username=%8Ft%93Vga+k;xx=%E6%98%A5%E5%A4%A9ga+k
Request解码:譏?螟?ga k
URLEncode:%B4%BA%CC%ECga+k
js编码:%u6625%u5929ga+k
js解码:春天ga k
js解码:´ºÌìga k
-----------------------Big5-----------------------------------
xx=%E6%98%A5%E5%A4%A9ga%20k; username=%8Ft%93Vga+k; 
username=%8Ft%93Vga+k;xx=%E6%98%A5%E5%A4%A9ga+k
Request解?:譏?螟?ga k
URLEncode:%ACK%A4%D1ga+k
js??:%u6625%u5929ga+k
js解?:春天ga k
js解?:¬K¤Ñga k
------------------------UTF8-----------------------------------
xx=%E6%98%A5%E5%A4%A9ga%20k; username=%8Ft%93Vga+k; 
username=%8Ft%93Vga+k;xx=%E6%98%A5%E5%A4%A9ga+k
Request解码:譏・螟ゥga k
URLEncode:%E6%98%A5%E5%A4%A9ga+k
js编码:%u6625%u5929ga+k
js解码:春天ga k
js解码:春天ga k
---------------------------------------------------------------


Client:JP 2000P
Server:GB 2003
正常。
Response.Cookies("xx")按当前字符集编码。
encodeURI的UTF8编码,按当前字符集解码,所以只有UTF8时正确解码。
-----------------------GB---------------------------------
xx=%E6%98%A5%E5%A4%A9ga%20k; username=%B4%BA%CC%ECga+k; 
username=%B4%BA%CC%ECga+k;MindSky=lao=1697;xx=%E6%98%A5%E5%A4%A9ga+k
Request解码:鏄ュぉga k
URLEncode:%B4%BA%CC%ECga+k
js编码:%u6625%u5929ga+k
js解码:春天ga k
js解码:´ºÌìga k
-----------------------Big5-----------------------------------
xx=%E6%98%A5%E5%A4%A9ga%20k; username=%ACK%A4%D1ga+k; 
username=%ACK%A4%D1ga+k;MindSky=lao=1697;xx=%E6%98%A5%E5%A4%A9ga+k
Request解?:?亙予ga k
URLEncode:%ACK%A4%D1ga+k
js??:%u6625%u5929ga+k
js解?:春天ga k
js解?:¬K¤Ñga k
------------------------UTF8-----------------------------------
xx=%E6%98%A5%E5%A4%A9ga%20k; username=%E6%98%A5%E5%A4%A9ga+k; 
username=%E6%98%A5%E5%A4%A9ga+k;MindSky=lao=1697;xx=%E6%98%A5%E5%A4%A9ga+k
Request解码:春天ga k
URLEncode:%E6%98%A5%E5%A4%A9ga+k
js编码:%u6625%u5929ga+k
js解码:春天ga k
js解码:春天ga k
---------------------------------------------------------------



Client:GB 2000P
Server:GB 2003
正常。
Response.Cookies("xx")按当前字符集编码。
encodeURI的UTF8编码,按当前字符集解码,所以只有UTF8时正确解码。
-------------------------------GB--------------------------------
xx=%E6%98%A5%E5%A4%A9ga%20k; username=%B4%BA%CC%ECga+k;
username=%B4%BA%CC%ECga+k;;xx=%E6%98%A5%E5%A4%A9ga+k
Request解码:鏄ュぉga k
URLEncode:%B4%BA%CC%ECga+k
js编码:%u6625%u5929ga+k
js解码:春天ga k
js解码:´ºÌìga k
----------------------------BIG5-------------------------------
xx=%E6%98%A5%E5%A4%A9ga%20k; username=%ACK%A4%D1ga+k; 
username=%ACK%A4%D1ga+k;;xx=%E6%98%A5%E5%A4%A9ga+k
Request解?:?亙予ga k
URLEncode:%ACK%A4%D1ga+k
js??:%u6625%u5929ga+k
js解?:春天ga k
js解?:¬K¤Ñga k
---------------------------UTF8-------------------------------
xx=%E6%98%A5%E5%A4%A9ga%20k; username=%E6%98%A5%E5%A4%A9ga+k; 
username=%E6%98%A5%E5%A4%A9ga+k;;xx=%E6%98%A5%E5%A4%A9ga+k
Request解码:春天ga k
URLEncode:%E6%98%A5%E5%A4%A9ga+k
js编码:%u6625%u5929ga+k
js解码:春天ga k
js解码:春天ga k
----------------------------------------------------------------


Client:GB 2000P
Server:GB 2000P

不正常。
Response.Cookies("xx")始终按系统的字符集。
encodeURI的UTF8编码,始终按系统字符集解码。
-------------------------------GB--------------------------------
xx=%E6%98%A5%E5%A4%A9ga%20k; username=%B4%BA%CC%ECga+k; 
username=%B4%BA%CC%ECga+k;xx=%E6%98%A5%E5%A4%A9ga+k
Request解码:鏄ュぉga k
URLEncode:%B4%BA%CC%ECga+k
js编码:%u6625%u5929ga+k
js解码:春天ga k
js解码:´ºÌìga k
----------------------------BIG5-------------------------------
xx=%E6%98%A5%E5%A4%A9ga%20k; username=%B4%BA%CC%ECga+k; 
username=%B4%BA%CC%ECga+k;xx=%E6%98%A5%E5%A4%A9ga+k
Request解?:鏄??ga k
URLEncode:%ACK%A4%D1ga+k
js??:%u6625%u5929ga+k
js解?:春天ga k
js解?:¬K¤Ñga k
---------------------------UTF8-------------------------------
xx=%E6%98%A5%E5%A4%A9ga%20k; username=%B4%BA%CC%ECga+k; 
username=%B4%BA%CC%ECga+k;xx=%E6%98%A5%E5%A4%A9ga+k
Request解码:鏄ュぉga k
URLEncode:%E6%98%A5%E5%A4%A9ga+k
js编码:%u6625%u5929ga+k
js解码:春天ga k
js解码:春天ga k
----------------------------------------------------------------


推断:IIS5.0的Response.Cookies或Request.Cookies编码有问题。
IIS6.0则正常。


嘎嘎,是我
身份:admin
发帖:1438
登陆次数:3287
2F 发表于 2006/11/6 21:19:49
IIS5.0始终按系统编码进行Cookie的编码和解码。
IIS6.0则按codepage进行编码和解码。

 
标题:
消息图标:                                             
                                            
正文:



* UBB 代码开启

 
CopyRight © 心缘地方 2005-2999. All Rights Reserved