使用jQuery / ajax处理500个错误

时间:2014-03-21 13:48:31

标签: jquery ruby-on-rails ruby ajax

我有这个jQuery方法,为ssh会话提供参数,等待输出并将其打印在文本区域。

它工作得很好但是如果用户写错了密码我得到的是后台500错误。

TL; DR:我如何修改它以处理500个错误?

谢谢!

$(document).ready(function () {
    $("button").click(function (event) {
        $.post("/ssh/execute", {
            hostname: $('#serverlist').val(),
            username: $('#login').val(),
            password: $('#password').val(),
            command: $('#CommandSelect').val()
        }).done(function (data) {
            console.log(data);
            $("#textarea").text(data.result);
        });
    });
});

1 个答案:

答案 0 :(得分:0)

由于$.post()只是$.ajax()的快捷方式,因此您可以使用statusCode选项为各种可能的响应代码创建回调,例如500错误

$.post("/ssh/execute", {
  hostname: $('#serverlist').val(),
  username: $('#login').val(),
  password: $('#password').val(),
  command: $('#CommandSelect').val(),
  statusCode: {
    500: function() {
    ...some callback...
    }
  }
}).done(function (data){
  ...
});