C# Web API方法仅允许post

C# Web API方法仅允许post,c#,api,rest,model-view-controller,C#,Api,Rest,Model View Controller,在Microsoft提供的web api模板上,AccountController中有许多方法 以注销为例,它只允许POST请求,并在您尝试访问它时发出警告 // POST api/Account/Logout [Route("Logout")] public IHttpActionResult Logout() { Authentication.SignOut(CookieAuthenticationDefaults.AuthenticationType); return Ok

在Microsoft提供的web api模板上,
AccountController
中有许多方法

以注销为例,它只允许POST请求,并在您尝试访问它时发出警告

// POST api/Account/Logout
[Route("Logout")]
public IHttpActionResult Logout()
{
    Authentication.SignOut(CookieAuthenticationDefaults.AuthenticationType);
    return Ok();
}
在哪里定义它只回复一篇文章,或者是什么告诉它只回复一篇文章


它没有
HttpPost属性或任何属性。

它没有。至少不在您发布的代码中。使用.NET 4.5.2 web api创建一个新项目VS2015,然后尝试执行/api/account/logout,您会得到:请求的资源不支持http方法“get”。嗯,它可能在从框架继承的routes表中。您知道,大部分框架都是以dll的形式编译的。如果.Net无法识别谓词,HttpPost是默认的回退方法。