Ext.Ajax.request 是不是有任何 response.status 代码列表?

Posted

技术标签:

【中文标题】Ext.Ajax.request 是不是有任何 response.status 代码列表?【英文标题】:Is there any response.status code list for Ext.Ajax.request?Ext.Ajax.request 是否有任何 response.status 代码列表? 【发布时间】:2014-03-17 02:22:45 【问题描述】:

对于Ext.form.BasicForm.submit(),失败的情况可以通过

failure: function(form, action) 
    switch (action.failureType) 
        case Ext.form.Action.CLIENT_INVALID:
            Ext.Msg.alert('Failure', 'Form fields may not be submitted with invalid values');
            break;
        case Ext.form.Action.CONNECT_FAILURE:
            Ext.Msg.alert('Failure', 'Ajax communication failed');
            break;
        case Ext.form.Action.SERVER_INVALID:
           Ext.Msg.alert('Failure', action.result.msg);
   

Ext.Ajax.request 怎么样?可能会诱发哪些故障案例? 提前致谢!

【问题讨论】:

状态为http状态。 200, 401, 404, 500 【参考方案1】:

根据我的经验,Ext.form.BasicForm.submit()Ext.Ajax.request() 的故障处理在参数上略有不同。

对于Ext.Ajax.request() 的故障处理,我通常使用以下方法:

        failure:function(response, opts)
            Ext.Msg.show(
                title:'Error code: '+response.status,
                msg:'Server error: '+response.statusText,
                buttons:Ext.Msg.OK,
                icon:Ext.Msg.ERROR
            );
        

根据上面的代码,第一个参数是包含错误重要信息的参数。 response 的两个重要属性是 response.statusresponse.statusText,您可以使用它们进行错误处理,例如 switch 语句。

response.status 将包含 HTTP 错误的状态代码,如 200、300、400、404、500 等。

有关response属性的更多详细信息,您可以通过console.log(response)向它们展示。

【讨论】:

以上是关于Ext.Ajax.request 是不是有任何 response.status 代码列表?的主要内容,如果未能解决你的问题,请参考以下文章

Sencha Toucha之Ext.Ajax

Ext Js,Ext.Ajax.request 在移动设备上不起作用

Ext.Ajax.Request 在浏览器中不起作用

在 Chrome 中超时 Ext.Ajax.request 后未捕获的异常

在 Ext JS 中未定义 request.xhr

逆向工程使用 Ext.Ajax.request 的跨域 POST 请求