HttpWebrequest使用的注意點

HttpWebrequest使用的注意點html

一、HttpWebrequest相關屬性的設置以及默認鏈接數量限制 System.Net.ServicePointManager.DefaultConnectionLimitweb

HttpWebRequest request=null;
request = (HttpWebRequest)WebRequest.Create(url);
request.Method = "POST";//GET,PUT等
request.Timeout = xxxx;//單位是毫秒
request.ContentType = "xxxx" ;
webRequest.KeepAlive = false;
webRequest.Proxy = null;

System.Net.ServicePointManager.DefaultConnectionLimit = 200;

二、HttpWebrequest相關方法的使用以及資源的釋放url

Stream myRequestStream = request.GetRequestStream();
myRequestStream.Write(byte[] buffer, int offset, int count);//寫入請求流的內容
myRequestStream.Close();//HttpWebRequest的RequestStream及時關閉
HttpWebResponse response = (HttpWebResponse)request.GetResponse();//發送
Stream myResponseStream = response.GetResponseStream();
//獲取返回值
StreamReader myStreamReader = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8"));
string retString = myStreamReader.ReadToEnd();
myStreamReader.Close();//及時關閉
myResponseStream.Close();//及時關閉
response.Close();//及時關閉

最後要把HttpWebRequest及時關閉釋放
if (request != null)
    {
        request.Abort();
    }

 

三、HttpWebRequest使用過程當中,各類資源的釋放,有的地方也能夠使用Using來進行釋放.具體使用方法能夠參照Using的用法來使用。spa

四、HttpWebRequest使用若是沒有設置正確的屬性以及資源沒有及時釋放的話,會致使不少問題code

例如:HttpWebRequest獲取GetResponse時會出現,長時間無響應。本做者在使用HttpWebRequest的時候就遇到過不少相似的問題,最後無外乎都是HttpWebRequest的屬性和方法中的資源沒有及時釋放致使不少問題。
htm

 

其餘出現的問題,能夠參照: blog

https://www.cnblogs.com/summer_adai/archive/2013/04/26/3045261.htmlutf-8

https://www.cnblogs.com/summer_adai/archive/2013/04/26/3045253.html資源

相關文章
相關標籤/搜索