问题描述
由于安全修补程序的一部分,我们需要在ASPNET Core Web应用程序中禁用HTTP OPTIONS方法。如何在ASP.Net core 3.1 API中禁用HTTP OPTIONS方法?
解决方法
这是一个带有中间件的演示: 将此添加到您的启动配置:
app.Use(async (context,next) =>
{
// Do work that doesn't write to the Response.
if (context.Request.Method=="OPTIONS")
{
context.Response.StatusCode = 405;
return;
}
await next.Invoke();
// Do logging or other work that doesn't write to the Response.
});
或者您可以申请 [HttpGet] [HttpPost] [HttpPut] ... 关于控制器中的动作方法。这里是an official document关于Http动词的信息。