C# Post数据流到HTTP地址

来源:互联网 发布:怎么修改mysql端口号 编辑:程序博客网 时间:2024/06/03 22:43

最经典的就是下面这段Post数据流到HTTP地址上,然后获得返回的响应。

参数sXmlMessage格式为:goods_id=18,即url参数goods_id赋值。微笑

            //把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();

 看很简单的几句就可以完成HTTP的发送和接收。当然如果你使用soap协议采用Webservice那么原理也相同,只不过是HTTP+XML的方式。
sr:http://www.cnblogs.com/qdwolf/archive/2004/08/13/33119.aspx