XMLHTTP中setRequestHeader()简单分析

新加:设置编码方法


xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");


语法

setRequestHeader(header, value);

参数

header字符串,请求头。

value 字符串,值。

还是不很明白?

1.CONTENT-TYPE是什么意思,application/x-www-form-urlencoded是什么意思?

2.下面几句setRequestHeader的含义?

setRequestHeader("Content-type", "application/x-www-form-urlencoded"); 

setRequestHeader("Content-length", paramsSend.length); 

setRequestHeader("Connection", "close");


通常在HTTP协议里,客户端像服务器取得某个网页的时候,必须发送一个HTTP协议的头文件,

告诉服务器客户端要下载什么信息以及相关的参数,如:

GET /bb.asp?www=1234 HTTP/1.1

Accept: */*

Accept-Language: zh-cn

UA-CPU: x86

Accept-Encoding: gzip, deflate

User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)

Host: www.e4j.cn:89

Connection: Keep-Alive

Cookie: %C3%F7%CC%EC=%B0%CB;ASPSESSIONIDASDBSDRR=BLEDBIBBCGKBJAKJCFEJKGII

而 XMLHTTP 就是通过HTTP协议取得网站上的文件数据的,所以也要发送HTTP头给服务器。

但是 XMLHTTP 默认的情况下有些参数可能没有说明在HTTP头里,这是当我们需要修改或添加这些参数时就用到了

setRequestHeader 方法。


就比如如果上面这段HTTP头文件内容是 XMLHTTP 提交默认的情况,当使用 setRequestHeader 方法后就这样,如: 

XMLObject.setRequestHeader "CONTENT-TYPE", "application/x-www-form-urlencoded" 

setRequestHeader "Connection", "close" 

这时HTTP头信息就应该是上述的一串数据内容。

http有几种提交方式,其中比较常用的就是 GET 和 POST 

这个标志就放在HTTP头开头的地方,这样讲容易理解点 

GET 方式是没有提交内容的。

GET 传参数的方式就是通过虚拟地址传送,如: 

GET /bb.asp?www=1234 HTTP/1.1 

参数全部就只有 "www=1234" 这么多

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容