Json EXT JS代理抛出错误

Json EXT JS代理抛出错误,json,rest,extjs,proxy,extjs4.2,Json,Rest,Extjs,Proxy,Extjs4.2,以下代理在零星的时刻抛出了listener异常。我添加了一个timeout:100来尝试重新创建错误,它每次都成功地抛出错误 但是,对于30秒以下的请求,有时会发生错误 除了超时之外,还有什么会导致抛出侦听器异常的吗?错误日志中没有任何信息 proxy: { type: 'rest', url: '/data/identity', reader: { type: 'json',

以下代理在零星的时刻抛出了
listener
异常。我添加了一个
timeout:100
来尝试重新创建错误,它每次都成功地抛出错误

但是,对于30秒以下的请求,有时会发生错误

除了超时之外,还有什么会导致抛出
侦听器
异常的吗?错误日志中没有任何信息

proxy: {
            type: 'rest',
            url: '/data/identity',
            reader: {
                type: 'json',
                successProperty: 'success',
                messageProperty: 'message'
            },
            writer: {
                type: 'json',
                writeAllFields: true
            },
            listeners: { 
                exception: function(proxy, response, operation, eOpts){
                    if(operation.action === "read"){
                        Ext.Msg.alert('Error Retrieving', response.responseText);
                    }else if(operation.action === "create"){
                        Ext.Msg.alert('Error Creating', response.responseText);
                    }else if(operation.action === "update"){
                        Ext.Msg.alert('Error Updating', response.responseText);
                    }
                }
            }
        }

操作
对象包含有关错误的信息。它有一个方法
getError()
来获取错误的描述。这可能会显示您正在查找的错误消息:

var error = operation.getError()
if(error.status && error.statusText){
    Ext.Msg.alert('Error', 'Error ' + error.status + ': ' + error.statusText)
}
这是我在代理中使用的代码。除了显示
操作期间抛出的错误
,它还显示服务器端发生的任何错误(我捕获它们并在json数据的
msg
属性中发送它们)。我检查navigator.onLine的原因是我的应用程序使用应用程序缓存

listeners: {
    exception: function(proxy, response, operation){
        var error = operation.getError(),
        errorMsg;
        if(!navigator.onLine){
            errorMsg = Lang._('You are not connected to internet.')
        } else if(Ext.isObject(error)){
            if(error.status && error.statusText)
                errorMsg = 'Error ' + error.status + ': ' + error.statusText
            else
                errorMsg = Ext.encode(error)
        } else if(response.responseText) {
            var json = Ext.decode(response.responseText);
            errorMsg = json.msg
        }
        Ext.Msg.show({
            title: Lang._('Error loading external data'),
            msg: errorMsg,
            icon: Ext.MessageBox.ERROR,
            buttons: Ext.Msg.OK
        })
    }
}

操作
对象包含有关错误的信息。它有一个方法
getError()
来获取错误的描述。这可能会显示您正在查找的错误消息:

var error = operation.getError()
if(error.status && error.statusText){
    Ext.Msg.alert('Error', 'Error ' + error.status + ': ' + error.statusText)
}
这是我在代理中使用的代码。除了显示
操作期间抛出的错误
,它还显示服务器端发生的任何错误(我捕获它们并在json数据的
msg
属性中发送它们)。我检查navigator.onLine的原因是我的应用程序使用应用程序缓存

listeners: {
    exception: function(proxy, response, operation){
        var error = operation.getError(),
        errorMsg;
        if(!navigator.onLine){
            errorMsg = Lang._('You are not connected to internet.')
        } else if(Ext.isObject(error)){
            if(error.status && error.statusText)
                errorMsg = 'Error ' + error.status + ': ' + error.statusText
            else
                errorMsg = Ext.encode(error)
        } else if(response.responseText) {
            var json = Ext.decode(response.responseText);
            errorMsg = json.msg
        }
        Ext.Msg.show({
            title: Lang._('Error loading external data'),
            msg: errorMsg,
            icon: Ext.MessageBox.ERROR,
            buttons: Ext.Msg.OK
        })
    }
}

操作
对象包含有关错误的信息。它有一个方法
getError()
来获取错误的描述。这可能会显示您正在查找的错误消息:

var error = operation.getError()
if(error.status && error.statusText){
    Ext.Msg.alert('Error', 'Error ' + error.status + ': ' + error.statusText)
}
这是我在代理中使用的代码。除了显示
操作期间抛出的错误
,它还显示服务器端发生的任何错误(我捕获它们并在json数据的
msg
属性中发送它们)。我检查navigator.onLine的原因是我的应用程序使用应用程序缓存

listeners: {
    exception: function(proxy, response, operation){
        var error = operation.getError(),
        errorMsg;
        if(!navigator.onLine){
            errorMsg = Lang._('You are not connected to internet.')
        } else if(Ext.isObject(error)){
            if(error.status && error.statusText)
                errorMsg = 'Error ' + error.status + ': ' + error.statusText
            else
                errorMsg = Ext.encode(error)
        } else if(response.responseText) {
            var json = Ext.decode(response.responseText);
            errorMsg = json.msg
        }
        Ext.Msg.show({
            title: Lang._('Error loading external data'),
            msg: errorMsg,
            icon: Ext.MessageBox.ERROR,
            buttons: Ext.Msg.OK
        })
    }
}

操作
对象包含有关错误的信息。它有一个方法
getError()
来获取错误的描述。这可能会显示您正在查找的错误消息:

var error = operation.getError()
if(error.status && error.statusText){
    Ext.Msg.alert('Error', 'Error ' + error.status + ': ' + error.statusText)
}
这是我在代理中使用的代码。除了显示
操作期间抛出的错误
,它还显示服务器端发生的任何错误(我捕获它们并在json数据的
msg
属性中发送它们)。我检查navigator.onLine的原因是我的应用程序使用应用程序缓存

listeners: {
    exception: function(proxy, response, operation){
        var error = operation.getError(),
        errorMsg;
        if(!navigator.onLine){
            errorMsg = Lang._('You are not connected to internet.')
        } else if(Ext.isObject(error)){
            if(error.status && error.statusText)
                errorMsg = 'Error ' + error.status + ': ' + error.statusText
            else
                errorMsg = Ext.encode(error)
        } else if(response.responseText) {
            var json = Ext.decode(response.responseText);
            errorMsg = json.msg
        }
        Ext.Msg.show({
            title: Lang._('Error loading external data'),
            msg: errorMsg,
            icon: Ext.MessageBox.ERROR,
            buttons: Ext.Msg.OK
        })
    }
}