【问题标题】:MVC 5 ajax post returns 404MVC 5 ajax 发布返回 404
【发布时间】:2016-07-17 13:17:37
【问题描述】:

这是我的 ajax -

$.ajax({
    type: 'POST',                
    url: 'SaveSomething',
    contentType: 'application/json; charset=utf-8',                                
    data: JSON.stringify({ json: 'test' }),
     success: function (data) {
          console.log('SUCCESS || ' + data);
      },
      fail: function (data) {
          console.log('FAIL || ' + data);
      }
 });

这是我的控制器 -

[HttpPost]
public ActionResult SaveSomething(string json)
{
     return View("Index", new ViewModel());
}

当我在开发者工具中检查请求时,它指向了正确的 url。我也尝试过将网址更改为更明确 -

url:  '/MyArea/MyController/MyAction'

但我继续得到 404。我只定义了默认路由 - 这里没有发生任何疯狂的事情。我可以将请求更改为 GET 并清除数据,它成功地访问了控制器。

任何人有任何想法,为什么这不会通过?

【问题讨论】:

    标签: ajax post asp.net-mvc-5


    【解决方案1】:

    您的数据不需要 JSON.stringify。只需致电:

    data: { json: 'test' },
    

    它应该可以工作。

    【讨论】:

    • 并删除 Content-type 或更改为:“application/x-www-form-urlencoded; charset=utf-8”
    • 相同的结果 - 404。
    • 这原来是我代码中其他地方的安全模块的副作用。感谢您的帮助。
    猜你喜欢
    • 2016-09-28
    • 2017-04-29
    • 2015-05-06
    • 2018-12-08
    • 1970-01-01
    • 1970-01-01
    • 2015-05-13
    • 2015-12-14
    • 1970-01-01
    相关资源
    最近更新 更多