Я могу получить только штраф через/api/set/id или/api/set/archived /, но PUT не работает. Мои маршруты:Запрашиваемый ресурс не поддерживает http mehod «Put»
routes.MapHttpRoute(
name: "SetId",
routeTemplate: "api/set/{id}",
defaults: new { controller = "Set", action = "getset" }
);
routes.MapHttpRoute(
name: "Set",
routeTemplate: "api/set/{action}/{id}",
defaults: new { controller = "Set", id = RouteParameter.Optional }
);
Комплект контроллера:
[HttpPut]
[AcceptVerbs("PUT")]
[ActionName("update")]
public HttpResponseMessage PutSet(Set set)
{
...
}
В стельку я помещаю необработанный объект из запроса соответствующего GET для:
http://localhost:24144/api/set/update
Но я получаю
"{" $ id ":" 1 "," Сообщение ":" Запрошенный ресурс не поддерживает htt p метод 'PUT'. "}"
Почему не работает PUT?
EDIT: Я также попробовал обновить этот первый маршрут, чтобы иметь id как необязательный, и удалил имя действия в методе PUT. Затем я попытался получить доступ через PUT/api/set, и я получаю ту же ошибку 405 - PUT не поддерживается.
Просто попытался это (они не были указаны первоначально) - казалось, не работают. Спасибо за подсказку, хотя – SB2055