C# Post数据流到HTTP地址
最经典的就是下面这段Post数据流到HTTP地址上,然后获得返回的响应。
看很简单的几句就可以完成HTTP的发送和接收。当然如果你使用soap协议采用Webservice那么原理也相同,只不过是HTTP+XML的方式。
sr:http://www.cnblogs.com/qdwolf/archive/2004/08/13/33119.aspx
//把sXmlMessage发送到指定的DsmpUrl地址上
Encoding encode = System.Text.Encoding.GetEncoding("utf-8");
byte[] arrB = encode.GetBytes(sXmlMessage);
HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create(DsmpUrl);
myReq.Method = "POST" ;
myReq.ContentType = "application/x-www-form-urlencoded";
myReq.ContentLength = arrB.Length;
Stream outStream = myReq.GetRequestStream();
outStream.Write(arrB,0,arrB.Length);
outStream.Close();
//接收HTTP做出的响应
WebResponse myResp = myReq.GetResponse();
Stream ReceiveStream = myResp.GetResponseStream();
StreamReader readStream = new StreamReader( ReceiveStream, encode );
Char[] read = new Char[256];
int count = readStream.Read( read, 0, 256 );
string str = null;
while (count > 0)
{
str += new String(read, 0, count);
count = readStream.Read(read, 0, 256);
}
readStream.Close();
myResp.Close();
Encoding encode = System.Text.Encoding.GetEncoding("utf-8");
byte[] arrB = encode.GetBytes(sXmlMessage);
HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create(DsmpUrl);
myReq.Method = "POST" ;
myReq.ContentType = "application/x-www-form-urlencoded";
myReq.ContentLength = arrB.Length;
Stream outStream = myReq.GetRequestStream();
outStream.Write(arrB,0,arrB.Length);
outStream.Close();
//接收HTTP做出的响应
WebResponse myResp = myReq.GetResponse();
Stream ReceiveStream = myResp.GetResponseStream();
StreamReader readStream = new StreamReader( ReceiveStream, encode );
Char[] read = new Char[256];
int count = readStream.Read( read, 0, 256 );
string str = null;
while (count > 0)
{
str += new String(read, 0, count);
count = readStream.Read(read, 0, 256);
}
readStream.Close();
myResp.Close();
看很简单的几句就可以完成HTTP的发送和接收。当然如果你使用soap协议采用Webservice那么原理也相同,只不过是HTTP+XML的方式。
sr:http://www.cnblogs.com/qdwolf/archive/2004/08/13/33119.aspx
posted on 2004-08-13 18:39 HelloSnoopy 阅读(5673) 评论(2) 编辑 收藏 举报