Bom dia! Estou construindo um sistema utilizando C# como back e React no front, e estou com um problema em duas controllers (supostamente), mas o erro parece ser o mesmo, sendo que sempre que faço uma requisição AJAX com o method do tipo PUT, obtenho o erro
PUT http://localhost:49232/api/Product/1025 405 (Method Not Allowed)
Seguido por
{Message: "The requested resource does not support http method 'PUT'."}
Li sobre CORS, fiz os ajustes recomendados em vários tópicos, mas o erro permanece. Segue o código :
$.ajax({ url: URL,//A URL é montada acima, e para teste seu valor é http://localhost:49232/api/Products/1025 contentType: 'application/json', dataType: 'JSON', data: { "product": json}, //Aqui passo o objeto montado type: 'PUT', beforeSend: function () { }, success: function (response) { // do something }.bind(this), error: function (response) { // do something else } }); Action C#:
[ResponseType(typeof(void))] public async Task<IHttpActionResult> PutProduct(int id, Product product) { if (!ModelState.IsValid) { return BadRequest(ModelState); } if (id != product.IdProduct) { return BadRequest(); } db.Entry(product).State = EntityState.Modified; try { await db.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!ProductExists(id)) { return NotFound(); } else { throw; } } return StatusCode(HttpStatusCode.NoContent); } Se puderem me ajudar, gratidão.