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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

HttpWebRequest类之基本定义

發(fā)布時(shí)間:2023/11/27 生活经验 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HttpWebRequest类之基本定义 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

HttpWebRequest和HttpWebResponse類是用于發(fā)送和接收HTTP數(shù)據(jù)的最好選擇。它們支持一系列有用的屬性。這兩個(gè)類位 于System.Net命名空間,默認(rèn)情況下這個(gè)類對于控制臺(tái)程序來說是可訪問的。請注意,HttpWebRequest對象不是利用new關(guān)鍵字通過構(gòu) 造函數(shù)來創(chuàng)建的,而是利用工廠機(jī)制(factory mechanism)通過Create()方法來創(chuàng)建的。另外,你可能預(yù)計(jì)需要顯式地調(diào)用一個(gè)“Send”方法,實(shí)際上不需要。接下來調(diào)用 HttpWebRequest.GetResponse()方法返回的是一個(gè)HttpWebResponse對象。你可以把HTTP響應(yīng)的數(shù)據(jù)流?(stream)綁定到一個(gè)StreamReader對象,然后就可以通過ReadToEnd()方法把整個(gè)HTTP響應(yīng)作為一個(gè)字符串取回。也可以通過?StreamReader.ReadLine()方法逐行取回HTTP響應(yīng)的內(nèi)容。

這種技術(shù)展示了如何限制請求重定向(request redirections)的次數(shù), 并且設(shè)置了一個(gè)超時(shí)限制。下面是HttpWebRequest的一些屬性,這些屬性對于輕量級(jí)的自動(dòng)化測試程序是非常重要的。

Get()方式,這張方式比較簡單

 /// <summary>/// http之get提交/// </summary>/// <param name="sender"></param>/// <param name="e"></param>protected void btn_Two_Click(object sender, EventArgs e){//不能直接new一個(gè)對象,需要同過創(chuàng)建HttpWebRequest hwRequest = (HttpWebRequest)WebRequest.Create("http://wwww.baidu.com");HttpWebResponse hwResponse =(HttpWebResponse)hwRequest.GetResponse();Stream str = hwResponse.GetResponseStream();//獲取響應(yīng)體,也就是請求url的類容StreamReader sr = new StreamReader(str,System.Text.Encoding.UTF8);Response.Write(sr.ReadToEnd());//輸出在頁面上
}

那么www.baidu,.com這個(gè)頁面的內(nèi)容就全部被你獲取到了

Post()提交

 protected void Button1_Click(object sender, EventArgs e){StringBuilder sb = new StringBuilder();sb.Append("name=xxx");sb.Append("&");sb.Append("pwd=123");  //把我們需要傳遞的參數(shù)拼接好byte[] by = System.Text.Encoding.UTF8.GetBytes(sb.ToString());//轉(zhuǎn)化成流的形式,需要編碼HttpWebRequest hwRequest = (HttpWebRequest)WebRequest.Create("http://wwww.baidu.com");hwRequest.Method = "POST"; //post提交hwRequest.ContentType = "application/x-www-form-urlencoded ";//<form encType=””>中默認(rèn)的encType,form表單數(shù)據(jù)被編碼為key/value格式發(fā)送到服務(wù)器(表單默認(rèn)的提交數(shù)據(jù)的格式)hwRequest.ContentLength = by.Length;using (Stream str = hwRequest.GetRequestStream()){str.Write(by, 0, by.Length);  //把我們的參數(shù)已流的形式寫入
        }HttpWebResponse hwResponse=(HttpWebResponse)hwRequest.GetResponse();//獲取數(shù)據(jù)using (StreamReader sr = new StreamReader(hwResponse.GetResponseStream(),System.Text.Encoding.UTF8)){Response.Write(sr.ReadToEnd());}}

Get()提交相比而言比較簡單,Post()比較難一點(diǎn),具體可以用post提交我們可以干嘛下次再說

轉(zhuǎn)載于:https://www.cnblogs.com/Sea1ee/p/6736077.html

總結(jié)

以上是生活随笔為你收集整理的HttpWebRequest类之基本定义的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。