加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – AJAX POST到MVC Controller显示302错误

发布时间:2020-12-15 21:06:46 所属栏目:asp.Net 来源:网络整理
导读:我想在我的MVC视图中进行 AJAX POST.我写了以下内容: 视图中的脚本代码 $('#media-search').click(function () { var data = { key: $('#search-query').val() }; $.ajax({ type: 'POST',url: '/Builder/Search',data: JSON.stringify(data),dataType: 'jso
我想在我的MVC视图中进行 AJAX POST.我写了以下内容:

视图中的脚本代码

$('#media-search').click(function () {
    var data = { key: $('#search-query').val() };

    $.ajax({
        type: 'POST',url: '/Builder/Search',data: JSON.stringify(data),dataType: 'json',contentType: 'application/json; charset=utf-8',success: function (data) {
            $('.builder').empty();
                alert("Key Passed Successfully!!!");
        }
    });
});

控制器代码

[HttpPost]
public ActionResult Search(string key)
{
    return RedirectToAction("Simple",new { key=key });
}

但是在AJAX POST上,我发现302找到了错误

解决方法

‘302’响应代码是重定向.您的控制器操作显式返回RedirectToAction,它只返回302.由于此重定向指令由AJAX调用消耗,而不是由浏览器直接使用,如果您希望重定向浏览器,则需要执行以下操作:
$.ajax({
     type: 'POST',success: function (data) {
          if (data.redirect) {
              window.location.href = data.redirect;
          }
          $('.builder').empty();
          alert("Key Passed Successfully!!!");
     }
});

如果没有,您将需要返回比控制器中的重定向指令更有意义的内容.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读