将数据作为XML数据发送,例如:
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
public
void
PostXml(
string
url,
string
xml)
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
{
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
byte[] bytes = Encoding.UTF8.GetBytes(xml);
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
HttpWebRequest request = (HttpWebRequest) WebRequest.Create(url);
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
request.Method = "POST";
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
request.ContentLength = bytes.Length;
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
request.ContentType = "text/xml";
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
using (Stream requestStream = request.GetRequestStream()) {
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
requestStream.Write(bytes, 0, bytes.Length);
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
HttpWebResponse response = (HttpWebResponse) request.GetResponse();
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
if (response.StatusCode != HttpStatusCode.OK) {
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
string message = String.Format("POST failed. Received HTTP {0}",
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
response.StatusCode);
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
throw new ApplicationException(message);
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
}
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)
}
接收端通过Request.InputStream读取:
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
byte
[] byts
=
new
byte
[Request.InputStream.Length];
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
Request.InputStream.Read(byts,
0
,byts.Length);
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
string
req
=
System.Text.Encoding.Default.GetString(byts);
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
req
=
Server.UrlDecode(req);
对于完整的XML数据,可以:
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
xmlDoc
=
new
XmlDocument();
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
xmlDoc.load(Request.InputStream);