首页 > 代码库 > Sencha Touch 2.2 Store Proxy 异常监控

Sencha Touch 2.2 Store Proxy 异常监控

移动端到服务端通信往往会发生很多莫名的异常情况,如何有效的监控proxy异常,给用户友好的用户体验呢?

Proxy给我提供了异常exception的监听事件,只需要监控该项目即可。

 

Sencha Touch Store的基类如下:

Ext.define(‘HzyApp.store.Base‘, {    extend: ‘Ext.data.Store‘,    config: {        proxy: {            scope: this,            listeners: {                exception: function (proxy, response) {                    var rst = Ext.decode(response.responseText);                    //如果失效请重新登陆                    if (rst.msg == "relogin") {                        Cookies.clear("hzyapp.username");                        Ext.Msg.alert("异常", "用户登陆状态失效,请重新登陆!");                        window.location.reload();                    }                    else                        Ext.Msg.alert("异常",rst.msg);                }            }        }    }});

服务端有异常监控机制,发生任何异常,会发送相应的异常信息给客户端,例如获取数据的时候,当用户登录超时,会直接提示用户登录状态失效,proxy监控到该异常会发起重新登陆的动作。

后台返回格式:

{result:1,msg:‘reload‘,success:false}success是必不可少的,msg和result可根据具体情况自定义

 

Sencha Touch 2.2 Store Proxy 异常监控