从服务器端把xml字符串post到另一个页面

public static string PostXml(string url, string xml)
        {
            WebRequest request = null;
            HttpWebResponse response = null;
            string result = string.Empty;
            try
            {                
                request = WebRequest.Create(url);
                request.Method = "POST";
                request.ContentType = "text/xml";
                StreamWriter writer = new StreamWriter(request.GetRequestStream());
                writer.WriteLine(xml);
                writer.Close();
                response = (HttpWebResponse)request.GetResponse();
                if (response.StatusCode == HttpStatusCode.OK)
                {
                    Stream objStream = response.GetResponseStream();
                    Byte[] buffer = new Byte[255];
                    int bytesRead = objStream.Read(buffer, 0, 255);
                    if (bytesRead > 0)
                    {
                        result = Encoding.UTF8.GetString(buffer).Replace("\0", string.Empty);
                    }
                }                
            }
            catch (WebException)
            { }
            catch (Exception)
            { }
            finally
            {
                if (request != null)
                    request.GetRequestStream().Close();
                if (response != null)
                    response.GetResponseStream().Close();
                
            }
            return result;
        }


其中,参数1是要post过去接收xml的页面地址。参数2是xml,因为比较小用了字符串形式的。

返回值result是post过去后的返回值。

 

另一个页面接收post过来的值。

Page.Response.ContentType = "text/xml";
            StreamReader reader = new StreamReader(Page.Request.InputStream);
            XmlDocument doc = new XmlDocument();
            doc.Load(reader);
            XmlNode node = doc.SelectNodes("root/class")[0];

            id = Int(node.SelectSingleNode("Id").InnerText);
                       if (save succesefully)
            {
                int id = ;                
if (id > 0)
                    Response.Write("success");
                else
                    Response.Write("fail");
                Response.End();
            }


 

接收到后处理并返回success或fail。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值