Jquery Ajax调用返回200 OK,但不调用web方法
我有如下ajax调用Jquery Ajax调用返回200 OK,但不调用web方法,jquery,json,ajax,asmx,Jquery,Json,Ajax,Asmx,我有如下ajax调用 $.ajax({ type: "POST", url: "MainPortal/VirtualRoomService.asmx/SaveJunit", data: JSON.stringify({ xjunit: junit, data: editor.getData().trim() }), contentType: "application/json; charset=utf-8", async: false, dataTyp
$.ajax({
type: "POST",
url: "MainPortal/VirtualRoomService.asmx/SaveJunit",
data: JSON.stringify({
xjunit: junit,
data: editor.getData().trim()
}),
contentType: "application/json; charset=utf-8",
async: false,
dataType: "json",
success: function(result) {
if (result.d.split('|')[0] != "-1") {
$("#<%=lblMessage.ClientID%>").text("Junit saved successfully");
} else {
$("#<%=lblMessage.ClientID%>").text(result.d.split('|')[1]);
}
},
error: function(result) {
if (result.status == 200 && result.statusText == 'OK') {} else {
alert("FAILED : " + result.status + ' ' + result.statusText);
}
}
});
到
了解错误。textStatus显示为parsererror,在ErrorSprown中显示意外的输入结束更改此行:
data:JSON.stringify({xjunit:junit,data:editor.getData().trim()}),
致:
data:{xjunit:junit,data:editor.getData().trim()},
实际上是URL
MainPortal/VirtualRoomService.asmx
未指向正确的位置。这是主要问题。将URL指向正确的位置已修复问题,不确定为什么对错误URL的响应为200 OK?希望这个答案能对有类似问题的人有所帮助。1.如果您正在使用安装在服务器上的VS,请检查端口号。可能是服务器中的其他用户正在使用该端口。2.使用这一行
error:function(error){console.log(error);}
在console中查看错误并粘贴到这里。谢谢Santhosh,我解决了这个问题。问题在于错误的url。更改url已修复此问题。对这个错误url的响应是200 OK,而不是404,这在一段时间内很难解决这个问题。这看起来很有趣,我的回答帮助我解决了其他类似的问题:(
{"xjunit":"<?xml version=\"1.0\" encoding=\"utf-8\"?><junit><byline>Mohan</byline><id></id><capid>102</capid><status></status><slug> 17</slug><tags>tags</tags><publication>21</publication><type><id>17</id><name>Text</name></type><label>21</label><deck>deck1</deck><intro>intro</intro><info><infodate></infodate><infotime></infotime><infoloc>loc</infoloc><infotext>info</infotext></info><createdby>7</createdby></junit>","data":"<p>content</p>"}
error: function(result) {
error: function (jqXHR, textStatus, errorThrown) {
MainPortal/VirtualRoomService.asmx