Ajax 发送xml原始数据始终为空
我正在努力将xml原始数据发布到我的webapi控制器,传递的值在控制器端总是空的 这是我的代码: 请求Ajax 发送xml原始数据始终为空,ajax,asp.net-web-api,Ajax,Asp.net Web Api,我正在努力将xml原始数据发布到我的webapi控制器,传递的值在控制器端总是空的 这是我的代码: 请求 Query.support.cors = true; $.ajax({ type: "POST", url: axForm.EndPoint + "api/items/PostXmlData", contentType: "application/xml", data: {xmlD
Query.support.cors = true;
$.ajax({
type: "POST",
url: axForm.EndPoint + "api/items/PostXmlData",
contentType: "application/xml",
data: {xmlData: axForm.QvXmlForm},
async: false,
success: function (response) {
$('#tab1').append(response);
},
error: function (xhr, ajaxOptions, thrownError) {
//alert(xhr.responseText);
}
});
}
- webapi方法
[ActionName("PostXmlData")] [System.Web.Http.AcceptVerbs("POST")] [System.Web.Http.HttpPost] public IHttpActionResult PostXmlData([FromBody]string xmlData) { ... }
- 已发送xml数据:
data: {"": axForm.QvXmlForm}
我感谢你的帮助
Patric试试这个,我不会把它作为答案发布,因为我自己也没有试过
public IHttpActionResult PostXmlData(){string xml=”“;如果(Request.InputStream!=null){var stream=new StreamReader(Request.InputStream);var xml=stream.ReadToEnd();//可能对xml进行了编码,请在使用之前对其进行解码。}
是否有需要“xmlData”的原因作为字符串而不是反序列化对象?处理强类型对象比处理字符串容易得多。