【发布时间】:2016-10-02 18:03:30
【问题描述】:
我遇到了这个错误,花了好几个小时才解决这个问题。我是 MEAN 堆栈开发的新手。 我正在尝试在我的应用程序中实现会话管理。但卡在了这一点上。
错误:
未捕获的错误:[$injector:unpr] 未知提供程序:$cookiesProvider
angular.module('MyApp')
.factory('YourHttpInterceptor', ['$q', '$cookies', '$location',
function($q, $cookies, $location) {
return {
'request': function(config) {
console.log("req");
config.headers = config.headers || {};
if ($cookies.get('token')) {
config.headers.Authorization = 'Bearer ' + $cookies.get('token');
}
return config;
},
// Optional method
'requestError': function(rejection) {
// do something on request error
console.log("inside the request error");
if (canRecover(rejection)) {
return responseOrNewPromise
}
return $q.reject(rejection);
},
// Optional method
'response': function(response) {
// do something on response success
console.log("inside the response ");
return response;
},
// optional method
responseError: function(response) {
if(response.status === 401) {
$location.path('/login');
// remove any stale tokens
$cookies.remove('token');
return $q.reject(response);
}
else {
return $q.reject(response);
}
}
};
}]);
谢谢。
添加“ngCookies”后 错误:
未捕获的错误:[$injector:modulerr] 无法实例化模块 MyApp 由于:错误:[$injector:modulerr] 无法实例化 模块 ngCookies 由于:错误:[$injector:nomod] 模块 'ngCookies' 不可用!您要么拼错了模块名称,要么忘记了 加载它。如果注册一个模块,请确保您指定 依赖项作为第二个参数。
app.js
angular.module('MyApp', [
'ngMaterial',
'ngMdIcons',
'ui.router',
'ngCookies',
'e3-core-ui.services',
'e3-core-ui.utils'
])
.config(['$stateProvider', '$routeProvider','$httpProvider','$mdThemingProvider', '$mdIconProvider', function($stateProvider, $routeProvider, $httpProvider, $mdThemingProvider, $mdIconProvider) {
$httpProvider.interceptors.push('YourHttpInterceptor');
...
enter code here
【问题讨论】:
-
您是否将
ngCookies添加为应用程序的依赖项? -
可以添加用于创建应用程序的代码吗?
-
基本上,我想实现会话管理。因此,如果您有任何可以帮助我的代码...我可以更新此代码。 (当我在我的应用程序中添加“ngCookies”时,它会产生一堆错误。)
-
@gnerkus 如果您不介意并且有时间,我可以分享我的 teamviewer 详细信息。
-
如果您能展示应用的创建方式以及添加
ngCookies时显示的错误,会更容易为您提供帮助。
标签: angularjs node.js cookies angular-http-interceptors