Estou recebendo o seguinte erro ao tentar atualizar:
405 Method Not Allowed
Use of the request method is not allowed on the resource.
Estou recebendo o seguinte erro ao tentar atualizar:
405 Method Not Allowed
Use of the request method is not allowed on the resource.
Willian, esse erro 405 ("Method Not Allowed") geralmente significa que a rota que você está tentando acessar existe, mas não aceita o método HTTP PUT.
Ve se sua rota aceita o método PUT
Confirme se você tem algo assim no seu código:
app.MapPut("/artistas/{id}", (int id, Artista artista) => {
// lógica de atualização
});
Se estiver usando controller:
[HttpPut("{id}")]
public IActionResult Atualizar(int id, [FromBody] Artista artista) {
// lógica
}
URL e método estão batendo?
Exemplo:
/artistas/{id}
/artistas/1
Se fizer PUT em um endpoint como /artistas
(sem {id}
), e ele só aceita com id, vai dar 405.
Você não está usando método errado no cliente
Se estiver usando Postman, curl, JavaScript ou outra linguagem, confirme que está mesmo usando o método PUT.
Outros problemas comuns
localhost:porta
certo)app.Run()
?app.UseRouting()
e app.UseEndpoints()
estão configurados corretamente? (se estiver usando controllers)Se puder, me manda o trecho de código onde define a rota PUT e como você está fazendo a requisição (ex: Postman, curl, JS). Com isso consigo te dar uma resposta mais precisa.