Os seguintes trabalhos:
curl --data '' link
O parâmetro "--data ''" parece ser importante, então o curl faz um POST e não um GET.
Eu tento postar para localhost com alguns parâmetros no URL. Tudo funciona bem no Fiddler. Mas cURL não me permite fazê-lo, com a mensagem de erro abaixo.
curl --data "Tarefa = assar" link
{"Message": "Nenhum recurso HTTP foi encontrado que corresponda ao URI da solicitação ' link '.", " MessageDetail ":" Nenhuma ação foi encontrada no controlador 'Donut' que corresponde à solicitação. "}
No Fiddler, eu componho a solicitação da seguinte maneira: POST link
Os seguintes trabalhos:
curl --data '' link
O parâmetro "--data ''" parece ser importante, então o curl faz um POST e não um GET.
Embora você possa tecnicamente estar fazendo uma solicitação "POST" no fiddler (que eu não usei, mas sei uma coisa ou duas sobre o HTTP), parece-me que você não está realmente postando sua consulta você está usando um "PUT" (presumivelmente combinado com um post vazio).
Acredito que, se você usar o link , o curl funcionará bem.
[Uma solicitação PUT coloca os parâmetros como parte da URL, e uma solicitação POST os coloca no cabeçalho da solicitação.
É provável que seu aplicativo esteja programado para aceitar o PUTS, mas não os POSTS.
O uso de curl com o argumento --data causa o curl para o POST, mas também para enviar os argumentos como parte do corpo da solicitação, em vez de enviar os argumentos por meio da URL.
Dado o erro que você está recebendo é um erro de roteamento do MVC dizendo que a rota não pode ser resolvida para uma ação, acredito que a ação que você está segmentando não está configurada para receber seus parâmetros do corpo do pedido.
Tente:
curl -d '' http://localhost:49301/api/donut/run?Task=bake