我可以通过/ 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“,”Message“:”请求的资源不支持htt方法'PUT'。“}”
为什么PUT不能正常工作?
编辑:我也尝试过更新,首先路线有一个id为可选,并在PUT方法去除动作的名称。然后我试着通过PUT/api/set进行访问,并得到相同的405错误 - PUT不受支持。
只是尝试这样做(这些都没有指定) - 似乎没有工作。谢谢你的提示 – SB2055 2013-03-07 17:43:00