javascript - 使用 javascript 处理 XMLHttpRequest 的正确方法

标签 javascript xmlhttprequest jqxhr

当我获得状态代码 400 时,我以这种方式 (1) 处理 XMLHttpRequest 对象并且它起作用了。 无论如何,我想这段代码非常适合我的用例。

我想更通用一些:
1)收到状态码500时服务器报错怎么处理?


(1)

_.each((JSON.parse(xhr.responseText)).children, function (xhrObject, name) {
    element.find('[name="' + name + '"]')
        .parent().append($('<div>')
        .attr('class', 'is-input-invalid')
        .text(xhrObject.errors));
});

最佳答案

这取决于应用程序。响应 500,您可能需要做三件一般的事情:

  1. 报告发生错误。
  2. 忽略它。
  3. 试试别的。

当操作对用户来说不是很重要时(也许一些后台更新检查他们甚至不知道你在做什么),第二个可能是好的,否则绝对要避免(唯一比拥有更糟糕的事情向您报告错误,没有向您报告错误)。第三个非常专业(要尝试的“其他事情”可能是显而易见的,也可能是不可能的,具体取决于您最初尝试做什么)。

要从 500 中获得任何有用的信息,您需要代码的服务器端向您发送一些有用的信息作为此类消息的正文。什么是“有用的”取决于您在做什么(例如,纯文本、json、xml 是您的其余代码最有可能处理的内容)。

关于javascript - 使用 javascript 处理 XMLHttpRequest 的正确方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12139740/

相关文章:

javascript - 如何使对象/属性显示在指令中?

javascript - 如何将非常大的算法盟友正确规范化为相对较小的数字范围?

javascript - 同域 AJAX 调用被第 3 方身份验证重定向

php - 同源策略——JavaScript 调用 PHP

javascript - response.headers 中的 axios 不显示 x 操作

javascript - D3 鼠标悬停

javascript - ionic3 ionic 滑 Action 为堆栈卡效果

javascript - CORS 飞行前返回 Access-Control-Allow-Origin :*, 浏览器仍然失败请求

javascript - 当 HTTP 响应有失败代码时,如何从 JSON 响应读取属性?

javascript - 上传大文件 (100mb+) 只会导致 Chrome 崩溃