日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

XMLHTTP中setRequestHeader参数问题

發布時間:2025/5/22 asp.net 141 豆豆
生活随笔 收集整理的這篇文章主要介紹了 XMLHTTP中setRequestHeader参数问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

新加:設置編碼方法

setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=gb2312")??

?

語法

oXMLHttpRequest.setRequestHeader(bstrHeader, bstrValue);

參數

bstrHeader 字符串,頭名稱。

bstrValue 字符串,值。

還是不很明白

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

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頭信息就應該是這樣了:?

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)?
CONTENT-TYPE:application/x-www-form-urlencoded?
Host: www.e4j.cn:89?
Connection:?close?
Cookie: %C3%F7%CC%EC=%B0%CB;ASPSESSIONIDASDBSDRR=BLEDBIBBCGKBJAKJCFEJKGII

setRequestHeader方法只是XMLHTTP為添加或修改HTTP頭提供的一個接口方法而已,?
至于里面的值則是HTTP協議的含義,當然也可以發自己的東西進去,即使IIS不能識別你的信息也不會報錯

如: setRequestHeader "MyName", "Supermanking"

雖然IIS不會報錯,但這個信息也可以有用,可以在ASP程序里讀取HTTP頭信息分析是否有?
MyName: Supermanking 信息,可根據你的需求來做處理,還有,CONTENT-TYPE:application/x-www-form-urlencoded含義是表示客戶端提交給服務器文本內容的編碼方式是URL編碼,即除了標準字符外,每字節以雙字節16進制前加個“%”表示

當然還有其他編碼方式,如:CONTENT-TYPE:multipart/form-data

至于:Content-length 就是表示提交的數據字節大小?
http有幾種提交方式,其中比較常用的就是 GET 和 POST?

這個標志就放在HTTP頭開頭的地方,這樣講容易理解點?
GET 方式是沒有提交內容的,所以 Content-length 在 GET 模式下是無效的.?
GET 傳參數的方式就是通過虛擬地址傳送,如:?
GET /bb.asp?www=1234 HTTP/1.1?
參數全部就只有 "www=1234" 這么多

如果用POST的話就有些不同,POST是將參數放到HTTP后面的,就以上面的HTTP作范例,用POST的方法傳參數?

POST /bb.asp 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)?
CONTENT-TYPE:application/x-www-form-urlencoded?
Host: www.e4j.cn:89?
Content-length: 8?
Connection: close?
Cookie: %C3%F7%CC%EC=%B0%CB;ASPSESSIONIDASDBSDRR=BLEDBIBBCGKBJAKJCFEJKGII?

www=1234?

這時,數據就需要說明字節大小了?

至于 Connection: Close,很明顯英文的意思是 連接:關閉?
只是客戶端在提交數據時告訴服務器讓誰先關閉連接而已。

總結

以上是生活随笔為你收集整理的XMLHTTP中setRequestHeader参数问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。