內容比較簡單,直接看**的注釋即可。
//待請求的位址
string url = "
";//建立 webrequest 物件,webrequest 是抽象類,定義了請求的規定,
//可以用於各種請求,例如:http, ftp 等等。
//httpwebrequest 是 webrequest 的派生類,專門用於 http
請求的方式通過 method 屬性設定 ,預設為 get
//可以將 method 屬性設定為任何 http 1.1 協議謂詞:get、head、post、put、delete、trace 或 options。
request.method = "
post";
//還可以在請求中附帶 cookie
//但是,必須首先建立 cookie 容器
request.cookiecontainer = new
system.net.cookiecontainer();
system.net.cookie requestcookie = new system.net.cookie("
request
", "
requestvalue
","/
", "
localhost");
request.cookiecontainer.add(requestcookie);
console.writeline(
"請輸入請求引數:");
//輸入 post 的資料.
string inputdata =console.readline(); //
拼接成請求引數串,並進行編碼,成為位元組
string postdata = "
firstone=
" +inputdata;
asciiencoding encoding = new
asciiencoding();
byte byte1 =encoding.getbytes(postdata); //
設定請求的引數形式
request.contenttype = "";
//設定請求引數的長度.
request.contentlength =byte1.length; //
取得發向伺服器的流
system.io.stream newstream =request.getrequeststream(); //
使用 post 方法請求的時候,實際的引數通過請求的 body 部分以流的形式傳送
newstream.write(byte1, 0
, byte1.length); //
完成後,關閉請求流.
newstream.close(); //
getresponse 方法才真的傳送請求,等待伺服器返回
首先得到回應的頭部,可以知道返回內容的長度或者型別
console.writeline("
content length is
", response.contentlength);
console.writeline(
"content type is
", response.contenttype); //
回應的 cookie 在 cookie 容器中
foreach (system.net.cookie cookie in
response.cookies)
, value:
", cookie.name, cookie.value);
}console.writeline(); //
然後可以得到以流的形式表示的回應內容
system.io.stream receivestream =response.getresponsestream(); //
還可以將位元組流包裝為高階的字元流,以便於讀取文字內容
//需要注意編碼
system.io.streamreader readstream = new
system.io.streamreader(receivestream, encoding.utf8);
console.writeline(
"response stream received.");
console.writeline(readstream.readtoend()); //
完成後要關閉字元流,字元流底層的位元組流將會自動關閉
response.close();
readstream.close();
WebRequest使用 呼叫新浪天氣
待請求的位址 string url 建立 webrequest 物件,webrequest 是抽象類,定義了請求的規定,可以用於各種請求,例如 http,ftp 等等。httpwebrequest 是 webrequest 的派生類,專門用於 http 請求的方式通過 method 屬性設定 預設為...
使用WebRequest時,URL中含有中文的問題
如下url 北京,由於中間有中文字元,傳到webrequest中時,得不到正確結果。為了使webrequest操作時,url支援中文,需要對這些中文特殊處理一下 encoding ed encoding.getencoding gb2312 webrequest req webrequest.cre...
C 使用WebRequest類請求資料
本文翻譯於 下列程式描述的步驟用於從伺服器請求乙個資源,例如,乙個web頁面或檔案。必須由uri標識的資源。從主機伺服器請求資料 1 建立乙個webrequest例項通過呼叫建立uri的資源。webrequest request webrequest.create note net 框架提供了特定於...