<强> AngularJS中的拦截器实例详解强>
<强>异步操作强>
有时候需要在拦截器中做一些异步操作。幸运的是,AngularJS允许我们返回一个承诺延后处理。它将会在请求拦截器中延迟发送请求或者在响应拦截器中推迟响应。
下面是项目中用到的代码。
ZbtjxcApp。工厂(“myHttpInterceptor”,“美元q”、“美元窗口”,“美元位置”,函数(q,窗口,美元位置美元){ 返回{//全局响应 “响应”:函数(响应){//这里还可以利用承诺做异步处理,目前不用做,好像也能满足需求 开关(response.status) { 案例(200): 如果(response.data) {//这里可以做自己相应的处理 如果(response.data。代码==100100){ window.location美元。href=" https://www.yisu.com/login.html "; }/*如果(response.data。代码=100200){ location.path美元(的/未经授权); } */} 打破; 案例(500)://后期在处理 控制台。日志(“服务器正忙——500”); 打破; 案例(404): 控制台。日志(“没有找到——404”); 打破; 默认值: console.log(“服务器正忙”); } 返回响应; } }; })。配置([httpProvider美元,函数(httpProvider美元){ 美元httpProvider.interceptors.push (“myHttpInterceptor”); })); ZbtjxcApp。工厂(“pageService”,[美元http,函数(http) { var getPageList=function (geturl getdata) { 返回http美元。get (geturl, { 参数:getdata }); } 返回{ getPageList: getPageList }; })); >之前感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
AngularJS中的拦截器实例详解