Веб-API после AJAX-вызов бросает ошибка http 405
Я звоню Asp.net веб-api Post methos, который имеет один параметр с именем value типа string.
Код как показано ниже:
In ValueController:
public IHttpActionResult Post(string value) { return Created(Request.RequestUri + "/" + "id=5", value); }
Jquery Calling Web Api:
$.ajax({ url: 'http://localhost:63022/api/values', type: 'POST', data: '{"value":"ravi"}', contentType: "application/json;charset=utf-8", crossDomain : true, success: function (data) { alert('success'); }, error: function (x, y, z) { alert('error'); } });
Вопрос 1:
Когда я запускаю этот код и вызываю метод web api Post, используя вышеописанный вызов jquery ajax, я получаю Http error 405 method not allowed.
Вопрос 2:
Modification in ValueController, adding FromBody attribute
public IHttpActionResult Post([FromBody]string value) { return Created(Request.RequestUri + "/" + "id=5", value); }
Когда я запускаю этот код и вызываю метод web api Post, используя вышеописанный вызов jquery ajax, я получаю null в строковом значении параметра метода действия [Post([FromBody]строковое значение)].
Обязательно ли писать атрибут FromBody для метода Post для работы в вопросе 1?
Ребята, пожалуйста, помогите мне ответить на вопросы 1 и 2...