与剑道电网工作,我可以成功地使下面的代码AJAX调用我的服务:如何获得远程JSON在ASP.NET
var serverData = { "ZoneParent": "123" };
var request = $.ajax({
type: "POST",
url: "/./Services/Reports.svc/getZones",
contentType: "application/json",
dataType: "json",
jsonp: null,
jsonpCallback: null,
data: JSON.stringify(serverData)
});
request.done(function (msg) {
alert(JSON.stringify(msg));
});
request.fail(function (jqXHR, textStatus) {
alert("Request failed: " + textStatus);
});
然而,当我试图实现与同一呼叫我的剑道格我得到一个错误
传入的消息有一个意外的消息格式“原始”。用于操作的期望的消息格式是 'XML', '的Json'
为getZones。我的服务呼叫做工精细用数据表,但我想切换到剑道可能。我已经搞砸了好几天无济于事。该应用程序不是MVC。这是我的剑道代码片段:
var dataSource = new kendo.data.DataSource({
transport: {
read: {
url: "/./Services/Reports.svc/getZones",
dataType: "JSON",
data: { zoneParent: "123" },
type: "POST"
},
parameterMap: function (data, operation) {
return kendo.stringify(data);
}
},
schema: {
data: "d"
}
});
var grid = $("#allGrids").kendoGrid({
dataSource: dataSource,
height: 200
});
感谢您的回答@cfeduke的解释了。只需添加的contentType:“应用/ JSON”的伎俩。也感谢cfeduke。 – JamesRLamar