中间件
这是一个公共的办法,但是有时候我们需要处理差异化啊, 我们参考 express 引入一个中间件来解决差异化问题。
util.ajax = function(obj, middleware) {
var deferred = $.Deferred();
$.ajax({
url: obj.url || '/interface',
data: obj.data || {},
dataType: obj.dataType || 'json',
type: obj.type || 'get',
}).success(function (data) {
if (data.code != 200) {
deferred.reject(data.err_msg);
} else {
deferred.resolve(data.data)
}
}).error(function (err) {
deferred.reject('接口出错,请重试');
})
// 添加中间件
if(!middleware) {
middleware = function(){};
}
return deferred.done(middleware).fail(function (err) {
message({
content: err,
type: 'error',
showLeftIcon: true,
duration: 5000
});
});
}
// 调用
// 调用
var obj = {
url: '/interface',
data: {
interface_name: 'name',
interface_params: JSON.stringify({})
}
};
var middleware = function(data) {
data.forEach(function(item){
item.fullName = item.firstName + item.lastName
})
}
util.ajax(obj, middleware)
.done(function(data){
console.log(data.fullName)
})
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对易采站长站的支持。









