HTTP 错误 405 | [HttpPost] ASP.NET MVC 核心 3.1

Posted

技术标签:

【中文标题】HTTP 错误 405 | [HttpPost] ASP.NET MVC 核心 3.1【英文标题】:HTTP ERROR 405 | [HttpPost] ASP.NET MVC Core 3.1 【发布时间】:2021-12-02 20:15:41 【问题描述】:

事情是这样的:

我有两页,

一个带有供应商列表的人 如果我点击其中一个供应商,我应该会进入第二页,其中包含所选供应商的所有用户。

这是我的代码,

页面选择供应商:

var link = '@Url.Action("UserManagement", "Home", new  GB = @ViewBag.GB, id = "code" )';

link = link.replace("code", listSuppliers[i].Item2);

suppliersTable.row.add([
  "<form action='" + link + "'><button type='submit' class='btn btn-primary'>" + listSuppliers[i].Item3 + " account(s)</button></form>" //Number of accounts, clickable to see all accounts
]).draw(false);

控制器:

[HttpPost]
public ActionResult UserManagement(string GB, string id)
...
return View();

问题是当我点击我的供应商时,页面 UserManagement 显示:“如果问题仍然存在,此页面将无法正常工作,请联系网站所有者 HTTP 错误 405"

我真的不明白,谁能帮帮我?

【问题讨论】:

【参考方案1】:

为什么要创建一个表单来访问链接?为什么不直接使用路由或查询字符串构建 GET URL?

无论如何,默认情况下使表单 POST 是 MVC 的一项功能。如果您没有在 html 中指定方法,那么它就是一个 GET。你可以在 F12 中看到这一点。

【讨论】:

以上是关于HTTP 错误 405 | [HttpPost] ASP.NET MVC 核心 3.1的主要内容,如果未能解决你的问题,请参考以下文章

发布 Web API 2 应用程序后的 HTTP 405 错误

当从 Html 表单调用带有 HttpPost 的 ASP.NET CORE 3.1 操作时,服务器返回 405 错误 [关闭]

发布到 Google 脚本时如何修复“HTTP 405”?

方法不允许 (POST) Django 405 错误

调用爬虫接口 发现httppost请求目标网站会出现405 状态码,

http 请求 返回状态码 405 的问题