私は少し混乱しています。次のメソッドを持つコントローラー(ApiControllerから派生)があります。
[ActionName("getusername")]
public string GetUserName(string name)
{
return "TestUser";
}
私のルーティングは次のように設定されています:
config.Routes.MapHttpRoute(
name: "ActionApi",
routeTemplate: "api/{controller}/{action}/{id}",
defaults: new { id = RouteParameter.Optional }
);
/api/mycontroller/getusername/test
フィドラーでGETをヒットしようとすると、400エラーが発生し続けました。
[FromBody]
GetUserNameのnameパラメーターに追加すると、すべてが機能することがわかりました。
私はどういうわけか、それ[FromBody]
がに使用されていると考えてHttpPost
いました。パラメータが投稿の本文にあり、したがって、には必要ないことを示していますGET
。私は間違っていたようですが。
これはどのように作動しますか?