|
前些天有个要求要从某个网站上取信息,但是该网站要求用post方式访问的.现在这里贴两个google到的方法.
using System.Net;
static string WebClinetPost(string url, string postData,string encodeType,out string err) { string uriString = url; byte[] byteArray; byte[] responseArray; //postData = "checkvalue=32&bbb=%CD%B6%C6%B1&ilc=0&kkk=22"; Encoding encoding = Encoding.GetEncoding(encodeType); try { WebClient myWebClient = new WebClient(); WebHeaderCollection myWebHeaderCollection; myWebClient.Headers.Add("Content-Type","application/x-www-form-urlencoded"); //myWebClient.Headers.Add("Referer","http://xxxxx/xxxxxxxxxxxxxxxxxxxxxxxx"); //myWebClient.Headers.Add("Accept-Language","zh-cn"); myWebHeaderCollection = myWebClient.Headers; byteArray = encoding.GetBytes(postData); responseArray = myWebClient.UploadData(uriString,"POST",byteArray);
err=string.Empty; return encoding.GetString(responseArray); } catch(Exception ex) { err=ex.Message; return string.Empty; } } public static string HttpWebResponsePost(string url, string postData,string encodeType,out string err) {
Stream outstream = null;
Stream instream = null;
StreamReader sr = null;
HttpWebResponse response = null;
HttpWebRequest request = null;
Encoding encoding = Encoding.GetEncoding(encodeType);
byte[] data = encoding.GetBytes(postData);
try
{
request = WebRequest.Create(url) as HttpWebRequest;
CookieContainer cookieContainer = new CookieContainer();
request.CookieContainer = cookieContainer;
request.AllowAutoRedirect = true;
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = data.Length;
outstream = request.GetRequestStream();
outstream.Write(data,0,data.Length);
outstream.Close();
response = request.GetResponse() as HttpWebResponse;
上一篇:封装的一些实现图片水印与图片自动结合缩放的类
下一篇:asp.net常用代码
|