找回密码
 加入
搜索
查看: 2368|回复: 3

[IE类操作] [已解決]編碼問題請教.....IE 網頁通訊的過程 所用的一種編碼

[复制链接]
发表于 2011-11-13 23:33:53 | 显示全部楼层 |阅读模式
本帖最后由 kk_lee69 于 2011-11-14 22:16 编辑

請問各位:

商品到貨訊息  這幾個字在網頁裡面 跟主機溝通的時候 傳輸的資料如下:
%E5%95%86%E5%93%81%E5%88%B0%E8%B2%A8%E8%A8%8A%E6%81%AF

請問這是用什麼編碼 .... 我要怎樣才能把 一大段的文字都轉成上面的哪種編碼呢??
发表于 2011-11-14 00:25:54 | 显示全部楼层
发表于 2011-11-14 00:31:34 | 显示全部楼层
本帖最后由 happytc 于 2011-11-14 00:44 编辑

回复 1# kk_lee69

我曾研究过这个玩意

情况比较复杂,并没有一个统一的编码。依据的操作系统语言,网页请求类型,所使用的浏览器,所请求的网页编码等不同而不同的。

比如在简体中文系统上,用IE输入URL:http://zh.wikipedia.org/wiki/春节
查看HTTP请求的头信息,会发现IE实际查询的网址是“http://zh.wikipedia.org/wiki/%E6%98%A5%E8%8A%82”。也就是说,IE自动将“春节”编码成了“%E6%98%A5%E8%8A%82”
而‘春节’的utf-8编码分别是“E6 98 A5”和“E8 8A 82”,因此,“%E6%98%A5%E8%8A%82”就是按照顺序,在每个字节前加上%而得到的。

又如,在Google上查讯‘春节’:http://www.google.com.hk/search?hl=zh-CN&q=春节
(注意这里的‘春节’属于查询字符串,不属于网址路径URL)
在简体中文系统上地址会显示:http://www.google.com.hk/search?hl=zh-CN&q=%B4%BA%BD%DA
其实这里的B4 BA BD DA就是‘春节’的GB2312编码而已(在每个字节前加上了%)

再如,对网页进行GET和POST提交,其编码的方法却又是该网页指定的编码

当然你还可以不用管什么操作系统,什么本地语言,什么浏览器等等,都统一用Javascript来进行编码,Javascipt函数的输入和输出,默认都是Unicode字符。

-------------------------------------------------------------------------------
那回到问题的本质,为什么要进行转码呢?
主要是RFC 1738标准对此做了硬性规定所致(http://www.ietf.org/rfc/rfc1738.txt):只有英语字母,数字,一些特别符号(如:$-_.+!*'())才能直接用于URL,别的一律要转码
 楼主| 发表于 2011-11-14 22:15:57 | 显示全部楼层
回复 3# happytc


    了解了 受益良多  感謝
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-9-20 21:36 , Processed in 0.087266 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表