Я пытаюсь сделать то, что мне показалось простым. Мне нужно создать службу WCF, которую я могу публиковать через JQuery. У меня есть операция в моей службе WCF, которая определяется следующим образом:
[OperationContract]
[WebInvoke(Method = "POST", BodyStyle = WebMessageBodyStyle.WrappedRequest, RequestFormat=WebMessageFormat.Json, ResponseFormat=WebMessageFormat.Json)]
public string SendMessage(string message, int urgency)
{
try
{
// Do stuff
return "1"; // 1 represents success
}
catch (Exception)
{
return "0";
}
}
Затем я пытаюсь получить доступ к этой операции со страницы ASP.NET через JQuery. Мой код JQuery для доступа к этой операции выглядит следующим образом:
function sendMessage(message) {
$.ajax({
url: "/resources/services/myService.svc/SendMessage",
type: "POST",
contentType: "application/json; charset=utf-8",
data: ({ message: message, urgency: '1' }),
dataType: "json",
success: function (data) {
alert("here!");
},
error: function (req, msg, obj) {
alert("error: " + req.responseText);
}
});
}
Когда я выполняю этот скрипт, обработчик ошибок отключается. В нем я получаю сообщение об ошибке:
"Обнаружен неожиданный символ 'c'."
Это сообщение включено в трассировку длинного стека. У меня вопрос, что я делаю не так? Я получил другие сообщения, такие как этот ( Как разместить массив сложных объектов с JSON, jQuery в ASP.NET MVC Controller? ) без какой-либо удачи. Как мне заставить работать это базовое взаимодействие?
Спасибо!