На стороне сервера у меня есть метод, который принимает массив целых чисел и возвращает объект JSON:Невозможно отправить массив с помощью метода GET?
public JsonResult GetCorrespondingOfficers(int[] categories){
//use `categories`
return Json(model,JsonRequestBehavior.AllowGet);
}
И у меня есть следующий скрипт на клиенте:
var categories=[1,2,3];
$.ajax({
url: url,
type: 'GET',
data: { categories: categories },
contentType: 'application/json; charset=UTF-8',
dataType: 'json',
success: function (data) { alert('Success');},
async: false
});
Когда я бегу над кодом я получаю null для параметра categories
на стороне сервера. Если я изменю метод от GET
до POST
, тогда он будет работать. Означает ли это, что я не могу отправить массив или любые данные Json с запросом GET? Если нет, то в чем проблема с моим кодом?
Я полностью потерял голову. Всего 2 дня назад я смог сделать это с помощью запросов GET. Теперь единственный вариант, который работает, - это метод POST. Что более интересно, так это то, что он не работает, если для contentType установлено значение 'application/json' –