close
有時候測試 Web Service 或是為了對特定網站做些邪惡的事,通常會使用.NET上的WebRequest 來撰寫測試程式,本篇文章將會介紹如何利用 WebRequest 類別來對網站做 Get 以及 POST 動作。
設定 WebRequest。
WebRequest request = (HttpWebRequest)WebRequest.Create("http://fqdn.com"); request.Method = WebRequestMethods.Http.Get; request.Headers.Add("Cookie", "cookie value"); //set cookie value
在第三行,有設定 header 資訊,如果要將 Cookie 傳到伺服器,可以將值直接設到 header 裡,而 key 為 Cookie。
執行Http Get。
string strHTML = string.Empty; WebResponse response = request.GetResponse(); string strStatus = (((HttpWebResponse)response).StatusDescription); //http status Stream responseData = response.GetResponseStream(); StreamReader reader = new StreamReader(responseData); strHTML = reader.ReadToEnd(); responseData.Close(); //寫回cookie string cookie = response.Headers["Set-Cookie"];
在取回 Response 物件後,就可以把 HTML 原始給取出來,另外 http 狀態及 Cookie 也可以取回來。
執行 Http Post。
byte[] postArray = Encoding.Default.GetBytes("Post Value"); request.ContentLength = postArray.Length; Stream postStream = request.GetRequestStream(); postStream.Write(postArray, 0, postArray.Length); postStream.Close();
上述程式碼只有將 post 值寫進 WebRequest 物件的部份。
以上就是簡單的介紹,了解這些用法後,就可以寫出自動化的程式來對網站做特定的測試。
全站熱搜
留言列表