我有一个像这样的AJAX请求:
$.ajax({
type: "POST",
contentType: "text/xml",
dataType: "xml",
url: "send.aspx",
data:{xml:"<xml></xml>"}
}).done(function(reply){
console.log(reply);
});
我没有在服务器端或客户端出错,但是当我尝试将输出写入控制台服务器端时,没有任何错误。我假设这是因为ASP将XML字符串视为实际的XML对象或类似的东西?
继承我的ASP代码:
protected void Page_Load(object sender, EventArgs e){
System.Diagnostics.Debug.WriteLine(Request.Params["xml"]);
}
答案 0 :(得分:0)
我最终这样做了:
protected void Page_Load(object sender, EventArgs e)
{
Page.Response.ContentType = "text/xml";
System.IO.StreamReader reader = new System.IO.StreamReader(Page.Request.InputStream);
String xml = reader.ReadToEnd();
String xmlData = HttpUtility.UrlDecode(xml);
System.Diagnostics.Debug.WriteLine(xmlData);
}
请注意,我使用HttpUtility.UrlDecode()将我的XML解码为可读字符串。感谢Abin Jaik代码。