You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AJAX POST请求404错误求助:根目录index.html调用控制器失败

嘿,这个问题我之前踩过坑!出现404 Not Found的核心原因几乎都是路由没匹配上,确实需要在RouteConfig.cs里做对应的配置,不过还要同步检查几个关键环节,我给你一步步捋清楚:

  • 先搞定RouteConfig.cs的路由配置
    MVC的路由系统会根据这里的规则匹配请求到对应的控制器和Action。如果你的POST请求对应HomeController里的SaveData方法,首先确保默认路由能覆盖,或者添加自定义路由更稳妥:

    public class RouteConfig
    {
        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
    
            // 默认路由(能匹配大部分场景)
            routes.MapRoute(
                name: "Default",
                url: "{controller}/{action}/{id}",
                defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
            );
    
            // 针对你的AJAX POST添加自定义路由(可选,但更明确)
            routes.MapRoute(
                name: "AjaxPostRoute",
                url: "Home/SaveData",
                defaults: new { controller = "Home", action = "SaveData" }
            );
        }
    }
    
  • 检查AJAX请求的URL是否正确
    一定要用绝对路径(以/开头),避免相对路径因为页面位置变化导致的错误。比如你的AJAX代码应该是这样:

    $.ajax({
        url: "/Home/SaveData", // 必须和RouteConfig里的路由规则完全对应
        type: "POST",
        data: { username: "test", content: "hello" }, // 你的请求数据
        success: function(res) {
            console.log("请求成功:", res);
        },
        error: function(xhr) {
            console.log("错误:", xhr.statusText);
        }
    });
    
  • 给控制器Action加上[HttpPost]特性
    MVC默认允许Action处理GET请求,但POST请求必须显式标注,否则会被拒绝或者找不到:

    public class HomeController : Controller
    {
        // 必须添加[HttpPost]才能接收POST请求
        [HttpPost]
        public ActionResult SaveData(string username, string content)
        {
            // 处理你的业务逻辑
            return Json(new { success = true, message = "数据已接收" });
        }
    }
    
  • 额外提醒:如果是Web API的情况
    如果你用的是ASP.NET Web API而不是MVC,那路由配置是在WebApiConfig.cs里,而不是RouteConfig.cs,这时候要调整对应的路由规则,并且AJAX的URL要以/api/开头。

如果做完这些还是404,可以打开浏览器的网络面板,看一下请求的完整URL,对比RouteConfig里的规则,就能快速定位哪里不匹配了!

内容的提问来源于stack exchange,提问作者Max Boy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 06:52:46