我使用ASP.NET 6开发了一个Web应用程序。我遇到了一些奇怪的错误,当我在action方法上添加HttpPost属性时,路由系统找不到特定的视图。我添加了自定义路由,并在Program.cs文件中配置了路由系统。但是,我仍然得到HTTP响应405错误。当我将http请求改为GET时,一切都很好。有人能帮我解决这件事吗?
ASP.NET 6
HttpPost
Program.cs
405
GET
z31licg01#
当我在action方法上添加HttpPost属性时,路由系统无法找到特定的视图,但是,我仍然得到http请求405错误。当我改变http请求,让一切工作正常我猜你通过URL请求执行了HttpPost方法。URL请求,这是一个HTTP GET命令。因此,您的应用获得了HTTP GET命令,但您的方法希望接受HTTP POST方法。HTTP请求405错误你可以先执行Get方法,然后再调用Post方法。从下面的代码中你可以看到在HttpPost方法中你可以找到具体的视图。
public IActionResult Index() { //return View(); return Indexpost(); } [HttpPost] public IActionResult Indexpost() { return View("Privacy"); }
结果:
1条答案
按热度按时间z31licg01#
当我在action方法上添加HttpPost属性时,路由系统无法找到特定的视图,但是,我仍然得到http请求405错误。当我改变http请求,让一切工作正常
我猜你通过URL请求执行了HttpPost方法。URL请求,这是一个HTTP GET命令。因此,您的应用获得了HTTP GET命令,但您的方法希望接受HTTP POST方法。HTTP请求405错误
你可以先执行Get方法,然后再调用Post方法。从下面的代码中你可以看到在HttpPost方法中你可以找到具体的视图。
结果: