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可根据具体情况自定义
时间: 2024-11-07 15:19:18

Sencha Touch 2.2 Store Proxy 异常监控的相关文章

【翻译】在Sencha Touch中创建离线/在线代理

原文:Creating an Online/Offline proxy in Sencha Touch 概述 在Sencha Touch中,一个常见的需求就是,当设备在没有连接互联网的时候,应用程序必须能够继续工作.Sencha Cmd为实现应用程序离线工作提供了一切所需的工具,如自动生成应用程序清单文件,不过,这其中最大问题是如何处理数据.有许多方式可以用来处理数据,而一个常用的技术就是在本地存储代理和AJAX代理之间实现切换. 在本文,ProWeb软件公司的Tom Cooksey将展示如何使

使用Sencha Touch加载本地Json数据

本例没有采用Sencha的mvc模式.只是一个简单的读取加载本地Json数据示例. 文档结构如下: app.js代码如下: Ext.require(['Ext.form.Panel', 'Ext.data.Store', 'Ext.data.reader.Json', 'Ext.dataview.DataView']); Ext.application({ name:'MyApp', icon:'images/icon.png', glossOnIcon:false, phoneStarupSc

Sencha学习笔记4: Creating your First App - 官方创建您的第一个Sencha Touch应用指导

英文原文地址:http://docs.sencha.com/touch/2.3.1/#!/guide/first_app (天地会珠海分舵声明:本翻译文章建议读者参照英文原文进行阅读,因为原文包含了实时代码编辑和预览的功能,这在csdn是不能做到的,所以下面只是提供了相应的截图,而非真实的演示) Required Software 软件需求 请参考<Sencha学习笔记1: Getting Started with Sencha Touch - 官方Sencha Touch入门指南> Crea

使用Sencha Touch加载服务器端数据。

本实例演示了Sencha Touch读取服务器端发来的Json数据. 文档结构如下: app.js代码如下: Ext.require(['Ext.form.Panel', 'Ext.data.Store', 'Ext.dataview.DataView']); Ext.application({ name:'MyApp', icon:'images/icon.png', glossOnIcon:false, phoneStarupScreen:'images/starUp.png', table

HTML5开发移动web应用——Sencha Touch篇(8)

DataView是Sencha Touch中最重要的组件,用于数据的可视化.数据可视化的重要性不言而喻,可以讲任何数据以形象的方式展示给用户.目前,如何更好地可视化是许多公司或框架都在追求的.通过数据的可视化可以发现数据之间的规律,预测未来的情况.下面我们就看看Sencha Touch中是怎么进行数据可视化的. 由于DataView组件内容非常多,所以将在以后的一段时间内持续这一部分的学习. 首先废话不多说,直接上使用DataView组件的代码框架. launch:function(){ var

Sencha touch 初体验

一.什么是Sencha Touch? Sencha Touch是一个应用手持移动设备的前端js框架,与extjs是同一个门派的,它继承了extjs的优点和缺点.功能很强大,效果很炫丽,效率不高. 二.例子来了 效果图:Sencha touch官方一个list的example PS:模拟器访问本地server的地址是10.0.2.2:8080,而不是127.0.0.1:8080 1.导入touch的相关js,css以及资源文件 2.index.html 1: <!DOCTYPE html> 2:

初探 Ext JS 6(sencha touch/ext升级版)

Sencha Touch 现在已全面升级至Ext Js 6,那么我们如何使用他们呢? 首先去官网下载最新的sdk和帮助文档 sdk下载地址:https://www.sencha.com/products/extjs/evaluate/ 如图,这个是试用版下载地址,试用版和正版的区别大概就是试用版有试用标记水印吧,大概是吧. 官方api下载地址:http://docs.sencha.com/extjs/6.0/ 这个就是官方的在线api了,想要下载就把鼠标移动到左上角的Ext JS Guides上

Sencha Touch 手机移动开发框架 HTML5 项目压缩方案 (一);

Sencha Touch框架生成基本项目目录结构 Index.html/ App.js App.json /touch[sdk]/ /Sencha-touch.js /src Resources/ App/ app.js以及app.json 是程序的入口点及基本加载配置: /touch[sdk] sencha-touch[debug|min...].js 是 SDK 文件 /src 这里是存放组件的位置 Resources/用于存放 样式及图片等资源文件; app/用于存放我们编写的程序源码:

[Phonegap+Sencha Touch] 移动开发77 Cordova Hot Code Push插件实现自己主动更新App的Web内容

原文地址:http://blog.csdn.net/lovelyelfpop/article/details/50848524 插件地址:https://github.com/nordnet/cordova-hot-code-push 以下是我对GitHub项目readme的翻译 ---------------------------------------------- Cordova Hot Code Push Plugin 此插件提供了能够使cordova app自己主动更新web内容的功