У меня есть следующий запрос ajax, в котором я пытаюсь отправить объект JSON на сервер:
function sendData(subscriptionJson) {
$.ajax({
type: "POST",
url: '@Url.Action("SubscribeSecurities", "Subscription")',
data: "{'subscriptions': subscriptionJson}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (response) {
console.log("success response: " + response.responseText);
alert("Hello: " + response.Name + " .\nCurrent Date and Time: " + response.DateTime);
},
failure: function (response) {
console.log("failure response: " + response.responseText);
alert(response.responseText);
},
error: function (response) {
console.log("error response: " + response.responseText);
alert(response.responseText);
}
});
}
Основываясь на верхнем ответе в этом сообщении, я добавил кавычки вокруг "данных" атрибут, но я получаю сообщение об ошибке, говорящее о том, что "subscriptionJSON" не распознается. Я пробовал тестировать с образцом строки, как это сделано в сообщении: data: "{'foo':'foovalue', 'bar':'barvalue'}",
, но когда контроллер получает параметр объекта subscribeJson, он равен нулю.
Каков официальный способ отправки объекта JSON через запрос POST на контроллер ASP .NET MVC?