javascript - 是否可以从 angularjs 中的服务访问 $cookieStore?

标签 javascript angularjs

我正在尝试从这样的服务内部访问 $cookieStore ($cookieStore.get("username")):

var angServices = angular.module('angServices', ['ngResource', 'ngCookies']);
angServices.factory('rsrUser', [ '$resource',
  function($resource, $cookieStore){
    var req = "/login"
    var timestamp = getMicrotime(true).toString();
    var username = $cookieStore.get("username");
    return $resource(baseURL + req, {}, {
      logIn: {method:'POST',
              isArray:false,
              headers:{
                  'X-MICROTIME': timestamp,
                  'X-USERNAME': username,
                  'X-HASH': getHMAC(timestamp, req)
                }
            }
    });
  }]);

但这会返回 TypeError: Cannot call method 'get' of undefined

我是做错了什么还是有更好的理由来实现这一目标?

最佳答案

您正在使用带注释的注入(inject),但没有为 cookie 存储提供注释。

var angServices = angular.module('angServices', ['ngResource', 'ngCookies']);

// Add $cookieStore to the array,             here --\
angServices.factory('rsrUser', [ '$resource', '$cookieStore'

  function($resource, $cookieStore){
    // the same
  }
}]);

关于javascript - 是否可以从 angularjs 中的服务访问 $cookieStore?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22330578/

相关文章:

javascript - 防止 AngularJS 中跨路由的字段输入重复

javascript - 如何在angularJS中隐藏表格中的一行?

javascript - 使用 NodeJS 更新全局变量

javascript - 有没有好的 Web 前端绘制工具的开放 API?

javascript - 在 JavaScript 中将两个字节转换为有符号 16 位整数

javascript - 如何在 QML 中动态添加项目到 VisualItemModel?

javascript - D3.js 4 与 AngularJS 1.5(组件或指令?)

javascript - 如何使用ajax从javascript调用servlet

angularjs - 如何在angular js中将$scope传递给$window.open

angularjs - 如何使用 AngularJS 设置页面标题