2012-05-04 107 views
1

如何使用HTTP GET for C#4.0而不是通常的webclient.download下載文件?使用C#HTTP GET下載文件

+1

WebClient有什麼問題?你想做什麼? – Sven

+0

我試圖模擬一個Web瀏覽器請求 – paradox

+1

這就是Web客戶端實際做的事情。你也可以使用這個套接字 –

回答

1

我相信這是一個GET請求。您是否正在尋找流式響應?

using (var client = new WebClient()) 
using (var sr = new StreamReader(client.OpenRead("http://www.mypage.com"))) 
    return sr.ReadToEnd(); 
+0

所以我只是將請求中的十六進制信息保存到具有所需擴展名的文件中? – paradox

+1

其實,在這一點上,你有整個「文件」作爲一個字符串,你可以保存任何擴展名。但是,如果你的目標是模擬一個瀏覽器,那麼你可以通過修改你的頭部看起來像移動設備請求一樣在Rob的帖子中這樣做。 –

1

如果你試圖模仿一個網頁瀏覽器,你仍然可以可以使用WebClient只要確保設置用戶代理。

WebClient client = new WebClient(); 
client.Headers.Add ("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)"); 

如果您還需要在請求中設置cookie,只需擴展該類並覆蓋GetWebRequest()方法。