Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何将ajax调用中的XML字符串发布到MVC控制器?_Jquery_Ajax_Asp.net Mvc_Asp.net Mvc 4 - Fatal编程技术网

Jquery 如何将ajax调用中的XML字符串发布到MVC控制器?

Jquery 如何将ajax调用中的XML字符串发布到MVC控制器?,jquery,ajax,asp.net-mvc,asp.net-mvc-4,Jquery,Ajax,Asp.net Mvc,Asp.net Mvc 4,下面给出了一个XML字符串。我试图通过Ajax调用将其发布到MVC控制器,而MVC控制器只有一个字符串参数。下面给出了我的ajax代码,但它无法处理请求。如何将XML字符串发送到控制器 var textdata = "<bb>tt</bb><ff>rr</ff>"; $.ajax({ url: '/AppVersionProtocolMethod/Test', type: 'P

下面给出了一个XML字符串。我试图通过Ajax调用将其发布到MVC控制器,而MVC控制器只有一个字符串参数。下面给出了我的ajax代码,但它无法处理请求。如何将XML字符串发送到控制器

var textdata = "<bb>tt</bb><ff>rr</ff>";

         $.ajax({
             url: '/AppVersionProtocolMethod/Test',
             type: 'POST',
             data : { xmlData : textdata},
             success: function (datas) {

             }
         });
var textdata=“ttrr”;
$.ajax({
url:“/AppVersionProtocolMethod/Test”,
键入:“POST”,
数据:{xmlData:textdata},
成功:功能(数据){
}
});
谢谢。
-Soumya

您正在设置您的
类型
ajax
调用被设置为
POST
,而您在
url
参数中使用查询字符串的方式是针对
GET
请求完成的

当我们使用
GET
请求时,会传递连接的值,您需要使用
data
属性传递它,然后它将作为POST传递给控制器操作

因此,请按以下方式更改代码以使其正常工作:

$.ajax({
         url: '/AppVersionProtocolMethod/Test',
         type: 'POST',
         data : { xmlData : textdata}
         success: function (datas) {

         }

     });

希望它对您有所帮助。

您正在发布的帖子可能会重复—数据肯定需要放在请求正文中吗?使用
data:{xmlData:textdata}
instead这是正确的。但是我尝试了这个。但它仍然不起作用。你能更详细地描述一下吗,不起作用无助于找出哪里出了问题?我尝试了控制器操作,使用了一个名为“ValidateInput(false)”的属性。然后它就可以获取XML字符串。但这是一个很好的解决办法还是你能为我提供一些更好的解决办法?