关于IE浏览器的一个疑问,请进

wantToLearnJsp 2004-10-14 02:36:20
在桌面上:
点击IE---》选择属性---》选择高级---》总是以UTF-8发送URL。

“总是以UTF-8发送URL” 这个选项是什麽意思?
是说浏览器发送请求的时候,将“GET”等HTTP请求的首部以UTF-8编码方式发送吗?
若请求中还有表单数据,表单数据将如何发送?

举例来说,假设一个网页,它是以“ISO-8859-1”方式编码的,它含有一个表单。
用户填写了表单,点击发送。
IE浏览器发送类似的请求:

GET /index.html HTTP/1.1

user-agent : ........
accept : text/html;*/*
cookie : sessioid=3jk3h4j435j435
lastModified : .......

name=jiao
passwd=731137

请问:上述的英文字符将以什麽编码方式发送?是用UTF-8,还是用ISO-8859-1?
又或者是:

GET /index.html HTTP/1.1

user-agent : ........
accept : text/html;*/*
cookie : sessioid=3jk3h4j435j435
lastModified : .......
以UTF-8发出。

而ISO-8859
name=jiao
passwd=731137
以ISO-8859-1发出?
...全文
164 点赞 收藏 14
写回复
14 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
bs221cn 2004-10-15
up
回复
禽兽v5 2004-10-15
----------
GET /index.html HTTP/1.1

user-agent : ........
accept : text/html;*/*
cookie : sessioid=3jk3h4j435j435
lastModified : .......

name=
passwd=
----------
这部分是内容,编码是html中指定的:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

我觉得你还是完整的读一遍规范比较好。
回复
JspStudent 2004-10-15
up
回复
JspStudent 2004-10-15
这里上不了国际网站,能大概解释一下吗?

您的意思是不是说,如下将用UTF-8编码发送:

GET /index.html HTTP/1.1

user-agent : ........
accept : text/html;*/*
cookie : sessioid=3jk3h4j435j435
lastModified : .......

name=
passwd=

而jiao,731137将以ISO-8859-1来发送?
回复
JspStudent 2004-10-15
up
回复
JspStudent 2004-10-15
cm4ever(小P)先生,真不好意思,我的英文不好,而且我这里上不了国外网站,请原谅。
您说的,
----------
GET /index.html HTTP/1.1

user-agent : ........
accept : text/html;*/*
cookie : sessioid=3jk3h4j435j435
lastModified : .......

name=
passwd=
----------
这部分是内容,编码是html中指定的:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312"》
是什麽意思?
GET /index.html HTTP/1.1

user-agent : ........
accept : text/html;*/*
cookie : sessioid=3jk3h4j435j435
lastModified : .......

name=
passwd=
难道是表单的内容?它属于URL吧?

我对您的第一个帖的理解是:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">是指定将要提交的
表单中的变量的值的编码方式,即jiao,731137以gb2312编码

而如下部分:
GET /index.html HTTP/1.1

user-agent : ........
accept : text/html;*/*
cookie : sessioid=3jk3h4j435j435
lastModified : .......

name=
passwd=
是属于URL,应用UTF-8编码来发送.

我的理解错了?请指正。麻烦您了。
回复
寒山石 2004-10-15
up
回复
禽兽v5 2004-10-14
浏览器发送数据到服务器时,分两部分。

1.URL
2.页面表单的内容

"总是以UTF-8发送URL",只是说明URL的编码是UTF-8,但是表单中内容的编码,是由网页的编码指定。比如下面的代码,将使表单编码为GB2312
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<form method=post>
</form>
</body>
</html>

如果对http的发送接收编码规范有兴趣,可以阅读http的规范
http://www.w3.org/Protocols/HTTP/HTTP2.html
回复
边城狂人 2004-10-14
up
回复
JspStudent 2004-10-14
ai
回复
JspStudent 2004-10-14
没人能回答吗?
回复
ch89 2004-10-14
帮你定一下
回复
Plat 2004-10-14


取消“总是以UTF-8发送URL”,可以解决中文文件名无法访问问题。原因不详。
回复
JspStudent 2004-10-14
顶一下
回复
发动态
发帖子
Web 开发
创建于2007-09-28

7.9w+

社区成员

Java Web 开发
申请成为版主
社区公告
暂无公告