收口思路

封装请求参数
意义:
server端知道当前请求来源于
哪个渠道(SEM渠道、微信流量入口、搜索流量入口......)、
哪一个版本、哪一个平台(iOS、Android、H5),可能Server就能对这个请求做定制化处理了
协助KPI考核,比如市场人员要推广自己的产品,
而后台要统计他今天成功推广多少单,就会为这个用户生成一个二维码,具体的url是这样的:

var head= {
    channel: 'webapp', //渠道标志
    version: '1,0,0', //版本信息
    ct: 'webapp', //平台信息
    extend: 'webapp', //可能需要的扩展信息

}


统一数据处理

意义:

正常的逻辑我们只需要处理data数据即可,
而错误码不为0的情况,我们多是弹一个toast提示msg错误信息,
所以我们会统一修改请求的回调,当然也会对一些错误码做特殊处理(未登陆、未授权)
var json={
    data: {},//真实数据
    errno: 9999,//错误码
    msg: "错误信息",//信息

}


//ajax 公共处理函数
var orgDisable  = function(data,index){
	if (data.rtnmessage.indexOf('停用') != -1){
		location.href="login.jsp";
		return;
	} 
	closeLayer('noReload',index);

}
var ajaxErr = function(data){
	parent.layer.alert(data.rtnmessage,{icon: 2,yes:function(index){
		console.log(index);
		orgDisable(data,index);
		LayerClose({index:index,type:"fatherall"})

	},cancel:function(){
		LayerClose({type:"self"})
	}
	});
}
var ajaxErr2 = function(data){
	parent.layer.alert(data.rtnmessage,{icon: 2});
	orgDisable(data);

}

弹窗关闭


var LayerClose = function(o){
	if(typeof o.type =="undefined"){
		return;
	}

	// 开始判断
	switch(o.type){
		case "self":
			 (!o.index)?layer.index:o.index
			layer.close(index);
			break;
		case "FrameIndex":
			//var index = parent.layer.getFrameIndex(window.name);
			(!o.index)?parent.layer.getFrameIndex(window.name):o.index
			layer.close(index);
			break;
		case "selfall":
			layer.closeAll(); //疯狂模式,关闭所有层
			break;
		case "fatherall":
			parent.layer.closeAll(); //疯狂模式,关闭所有层
			break;
		default:
			
			break;
	}
};





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值