在网上看到一个例子:

WebClient webRemote = new WebClient();
string s = Encoding.Default.GetString(webRemote.DownloadData(url));
看起来似乎简单好用,我把这段代码用在我做的dll中,也很用了一阵子,今天使用我的dll的兄弟突然告诉我说用dll获得的网页内容和实际内容有出入.我一看,果然,虽然很相似,但还是有很多地方不同,有点象过期的内容.没办法,只好改了,很快,我用HttpWebRequest + POST解决了问题,然后受到启发,找到了使用WebClient的解决之道
WebClient webRemote = new WebClient();
            webRemote.Headers.Add(
"Content-Type","application/x-www-form-urlencoded");
            
byte[] byteArray = Encoding.GetEncoding("gb2312").GetBytes("name=value");
            
string s = Encoding.GetEncoding("gb2312").GetString(webRemote.UploadData(url,"POST",byteArray));
虽然比上面多了2行代码,但比起用HttpWebRequest来说,还是很简单了^_^
posted on 2006-05-17 16:32  非我  阅读(344)  评论(2编辑  收藏  举报