【问题标题】:Restangular Response Interceptor for Headers标题的 Restangular 响应拦截器
【发布时间】:2015-11-13 14:36:53
【问题描述】:

我正在从 Angular 应用程序到服务器端进行数据通信。服务器创建一个令牌并将其发送到标头中。我正在寻找使用 Restangular 拦截响应并将其保存在 localStorage 中的方法。我没有成功。

我在我的应用 .config 中做了类似的事情

RestangularProvider.addResponseInterceptor('HttpInterceptor');

然后在 HttpInterceptor 中,我调用了 Storage 来存储 Header。但是我遇到了几个错误,无法弄清楚这一点。

提前致谢!

【问题讨论】:

    标签: angularjs restangular angular-http-interceptors http-token-authentication


    【解决方案1】:

    好吧,经过大量研究,我终于找到了适合我的解决方案。

    所以在我的 app.js 中,我包含了这个:

    .config(function ($stateProvider, $urlRouterProvider, RestangularProvider, $httpProvider) {
        $httpProvider.interceptors.push('AuthInterceptor');
    }
    

    然后我使用 AuthInterceptor 服务进行标头提取。

    angular.module('myApp')
      .factory('AuthInterceptor', AuthenInterceptor);
    
    AuthenInterceptor.$inject = ['$localStorage'];
    
    function AuthenInterceptor($localStorage) {
      return {
        response: function (response) {
          var authToken = response.headers('You Token Name');
          if (authToken) {
            $localStorage.userToken = authToken;
          }
          return response;
        }
      };
    }
    

    希望它可以帮助有类似问题的人。谢谢!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-05-29
      • 1970-01-01
      • 1970-01-01
      • 2015-11-13
      • 1970-01-01
      • 1970-01-01
      • 2023-01-22
      • 1970-01-01
      相关资源
      最近更新 更多