C# HTTP POST GET 示例代码
/// <summary>
/// POST
/// </summary>
/// <returns></returns>
public static string HttpConnectToServer(string ServerPage, string strXml, string contentType = "text/xml")
{
//string postData = "arg0=" + strXml;
string postData = strXml;
byte[] dataArray = Encoding.UTF8.GetBytes(postData);
//创建请求
HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(ServerPage);
request.Method = "POST";
request.ContentLength = dataArray.Length;
request.ContentType = contentType;
//创建输入流
Stream dataStream = null;
try
{
dataStream = request.GetRequestStream();
}
catch (Exception ex)
{
return ex.Message;//连接服务器失败
}
//发送请求
dataStream.Write(dataArray, 0, dataArray.Length);
dataStream.Close();
//读取返回消息
string res = string.Empty;
try
{
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
res = reader.ReadToEnd();
reader.Close();
}
catch (Exception ex)
{
return null;//连接服务器失败
}
return res;
}
/// <summary>
/// GET
/// </summary>
/// <param name="url"></param>
/// <returns></returns>
public static string HttpGet(string url)
{
try
{
HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest;
request.Method = "GET";
request.UserAgent = "Mozilla/4.0";
request.KeepAlive = true;
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
string result = reader.ReadToEnd();
//当Close与Dispose同时存在时,请使用Dispose释放资源
//Close负责关闭流,但不一定会释放资源
reader.Close();
response.Close();
reader.Dispose();
return result;
}
catch (Exception ex)
{
return null;//连接服务器失败
}
return string.Empty;
}