angular 拦截器每个请求传递用户的token
2016-09-07 18:11
344 查看
angular.module('houseApp') .config(["$stateProvider", "$ionicConfigProvider","$httpProvider",function ($stateProvider, $ionicConfigProvider,$httpProvider) { //禁用所有缓存 $ionicConfigProvider.views.maxCache(0); //添加拦截器 $httpProvider.interceptors.push('sessionInteceptor'); })]);
/** * 查询条件服务 * */ angular.module('houseApp') .factory('sessionInteceptor', ["WAP_CONFIG","$q","userInfoService",function(WAP_CONFIG,$q,userInfoService) { var myInterceptor = {}; //该方法接收请求配置对象(request configuration object)作为参数,然后必须返回配置对象或者 promise 。 myInterceptor.request = function(requestConfig){ console.log("myInterceptor.request userInfoService.getUserKey(): " + userInfoService.getUserKey()); //为每一个请求添加token,每个请求都合法登录 if(requestConfig["data"] != "" && requestConfig["data"] != null && requestConfig["data"] != undefined ){ requestConfig["data"]["token"] = userInfoService.getUserKey(); } return requestConfig; }; //该方法接收响应对象(response object)作为参数,然后必须返回响应对象或者 promise。 myInterceptor.response = function(responseObject){ //判断服务器响应是否为999,如果是则表示没有登录 if(responseObject.data.status == 999){ //window.location.href = "/wap/tmpl/member/login.html"; console.log("responseObject.data.status == 999"); } return responseObject; }; myInterceptor.requestError = function(rejectReason){ var deferred = $q.defer(); console.log("myInterceptor.requestError : " + responseObject); return deferred.promise; }; myInterceptor.responseError = function(responseError){ console.log("myInterceptor.responseError : " + responseObject); return {}; }; return myInterceptor; }]);
相关文章推荐
- 为什么每个请求都要有用户名密码呢,那不是每次都要查询一下了,token,表示这个用户已经验证通过了,在token有效期内,只需要判断token是否有效就可以了
- web 开发,个人中心每个请求,判断用户是否登录,若没有登录,则跳转到登录页面,登录成功后返回之前页面
- 通过配置http拦截器,来进行ajax请求验证用户登录的页面跳转
- 【Angular】angular-HttpClient 与服务器通讯 Get Post Put Delete Http 拦截器 请求讲解
- 【Angular】angular-HttpClient 与服务器通讯 Get Post Put Delete Http 拦截器 请求讲解
- 【Angular】angular-HttpClient 与服务器通讯 Get Post Put Delete Http 拦截器 请求讲解
- 5.腾讯微博Android客户端开发——获取请求用户授权Request Token .
- 【Angular】angular-HttpClient 与服务器通讯 Get Post Put Delete Http 拦截器 请求讲解
- 【Angular】angular-HttpClient 与服务器通讯 Get Post Put Delete Http 拦截器 请求讲解
- 【Angular】angular-HttpClient 与服务器通讯 Get Post Put Delete Http 拦截器 请求讲解
- 【Angular】angular-HttpClient 与服务器通讯 Get Post Put Delete Http 拦截器 请求讲解
- angular中设置$http的post请求的数据传递格式
- Struts2拦截器的应用:未登录用户拦截(同时拦截ajax请求)
- Spring Boot实现一个监听用户请求的拦截器
- 【Angular】angular-HttpClient 与服务器通讯 Get Post Put Delete Http 拦截器 请求讲解
- 【Angular】angular-HttpClient 与服务器通讯 Get Post Put Delete Http 拦截器 请求讲解
- Struts2Action请求转发以及参数 拦截器传递参数
- Spring Boot实现一个监听用户请求的拦截器
- MyEclipse struts2 拦截器处理用户请求简单实例
- 【Angular】angular-HttpClient 与服务器通讯 Get Post Put Delete Http 拦截器 请求讲解