0

У меня есть AddCategory() метод в моем контроллер:

[RoutePrefix("api")] 
    public class CategoryController : ApiController 
    { 
      .... 
     [Route("addCategory")] 
     [HttpPost] 
     public void AddCategory(string category) 
     { 
     var getCat = category; 
     } 

На мой home.html у меня есть кнопка Сохранить Новая категория я написал $ метод http.post для него:

var testString = "TEST String"; 
      var req = { 
       method: 'POST', 
       url: '/api/addCategory', 
       data: testString, 

      }; 
      $http(req).then(function successCallback(response) { 
       console.log("Success"); 
       }, function errorCallback(response) { 
        console.log("Eror"); 
       }); 

Но у меня есть следующая ошибка:

angular.js:11442 POST http://localhost:6059/api/addCategory 404 (Not Found)

В сети закладки в консоли развития я finded ошибки: enter image description here

может быть это важно, но я отключил XML в WebApiConfig.cs:

var json = GlobalConfiguration.Configuration.Formatters; 
     json.JsonFormatter.UseDataContractJsonSerializer = true; 
     json.Remove(json.XmlFormatter); 

Может быть, кто-нибудь знает, как я могу его изменить? Спасибо за ваши ответы!

+0

Можете ли вы использовать почтальона и отправить заявку в/api/addCategory? – Pterrat

+0

Да, я сделал это: ошибка: * На контроллере «Категория» не найдено никаких действий, которые соответствуют запросу * –

ответ

2

Ваш метод Сообщение должно возвращать IHttpActionResult. или ваш запрос HTTP всегда возвращает код 404.

Попробуйте это:

[RoutePrefix("api")] 
    public class CategoryController : ApiController 
    { 
      .... 
     [Route("addCategory")] 
     [HttpPost] 
     public IHttpActionResult AddCategory(string category) 
     { 
     var getCat = category; 
     if(getCat != null) 
      return Ok(); 

     return NotFound(); 
     } 

Я совет вам использовать Api Отдых в C# с $ ресурсом угловой. На мой взгляд, это лучший образец.

+0

У меня проблемы с сериализацией и проблемы с отправкой объекта на мой контроллер, это мой первый запрос http.post. Спасибо за ваш ответ! –

+0

U может использовать [FromUri] или [FromBody] в параметрах AddCategory – Pterrat

0

Проблема, связанная с услугой вы звоните, 404 означает не найден:

404 http error

поэтому-то в URL службы или в локальном сервере не работает.

Смежные вопросы