最经典的就是下面这段Post数据流到HTTP地址上,然后获得返回的响应。
//把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的方式。