URL编码和网页编码

来源:互联网 发布:秋天的童话知乎 编辑:程序博客网 时间:2024/05/18 01:27

今天梳理了一下关于编码的概念,把以前没有搞明白的东西,又理解了一遍。

虽然我还不能肯定是不是全部肯定。

关于我们计算机字符串编码,主要是两块。

一个是URL的编码,一个是网页内容(CONTENT TYPE

 

这个就造成了不兼容的问题,因为我们的互联网运行机制决定了。

当我们在浏览器输入URL的时候,浏览器都有自己默认的编码方式

比如IEUTF-8)、Firefox(GB2312)、还有360、搜狗、Chorme

有些是ASC-II有些是Unicode,大部分是Unicode,当然是可以更换的

浏览器是无法显示内容的,因为网页的内容全都是在服务器端。

所以,这个时候浏览器会将我们的URL进行ASC-II编码或者Unicode

当然不止这两种了。

然后服务器接受了编码,然后把编码进行解码,解码的方式也有不同

例如是UTF-8,或者GBK什么的

然后我们的服务器抓取编码后的网页发送到浏览器上

浏览器这个时候接受到服务器响应之后,把编码又经过自己的编码方式

进行解码,并显示给客户。

浏览器编码————>服务器解码,网页编码传递——————>浏览器解码,显示

所以有时候会出现乱码的现象

 

然后再来谈编码的东西

最开始的“美标”也就是ASC-II属于有数字0-9、有字母a-zA-Z,然后还有空格

和一些标点符号,显然这些是不够用的。

就有了扩展的ASC-IILatin-1

但是 世界上还有很多国家是用汉字,特别是亚洲的国家。

所以就有了Unicode也就是被称作万国码。

UTF-7UTF-8都是他的子集。

中国在1981年也有自己的编码称作 “国标”

也被称作“分区码”。有9494列。

然后就有了GBK,像百度的GB2312就是它的子集。

 

 

补充一下,现在的XMLHTML的标准编码是UTF-8

 

如果真的发现网页显示乱码了,如何确定它是不是编码引起的呢?我教您一个简单的方法。

 

 

首先,在页面上点击鼠标右键,移动到编码一项,右边出现一个菜单,看圆点的位置判断当前浏览器的编码查看模式。

 

Firefox浏览器的编码方式查看是在菜单栏——查看——字符编码中。

 

其次,确定网页的编码模式。在浏览器中点击鼠标右键,在菜单中选择查看源代码,然后找到前几行中的一段代码:

 

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

 

 

这行代码就是对网页编码的定义,gb2312是简体中文的编码,如果浏览器的解析编码是utf-8,而页面的编码确实gb2312,网页乱码必然出现。

 

 

 

所以我们在上网的时候尽量避免汉字的输入。

各大网站的编码不一样,这也是很正常的。

英文的一般是UTF-8

中国的是GB2312

或者是ISO

 

 

这些都是看网上的一些博客的理解以及百度百科的理解,如有不对

恳请指正。

 

原创粉丝点击