ASP.NET POST XML JSON数据,发送与接收

接收端通过Request.InputStream读取:

byte[] byts = new byte[Request.InputStream.Length];

Request.InputStream.Read(byts,0,byts.Length);

string req = System.Text.Encoding.Default.GetString(byts);

req = Server.UrlDecode(req);

对于完整的XML数据,可以:

xmlDoc = new XmlDocument();

xmlDoc.load(Request.InputStream);

将数据作为XML数据发送,例如:

public void PostXml(string url, string xml)

{

byte[] bytes = Encoding.UTF8.GetBytes(xml);

HttpWebRequest request = (HttpWebRequest) WebRequest.Create(url);

request.Method = "POST";

request.ContentLength = bytes.Length;

request.ContentType = "text/xml";

using (Stream requestStream = request.GetRequestStream()) {

requestStream.Write(bytes, 0, bytes.Length);

}

HttpWebResponse response = (HttpWebResponse) request.GetResponse();

if (response.StatusCode != HttpStatusCode.OK) {

string message = String.Format("POST failed. Received HTTP {0}",

response.StatusCode);

throw new ApplicationException(message);

}

}