使用Interceptor cookie / server-sessions维护会话

时间:2016-06-03 20:14:25

标签: angularjs node.js session cookies angularjs-interpolate

首先,道歉,如果这个问题没有意义。我正在为我的平均堆栈应用程序开发会话管理代码。从过去几天开始,我发现了很多实现它的方法,它们使用cookie,会话或http-headers。我试图实施,但没有成功。

我成功地将拦截器与我的代码链接起来。代码正在侦听每个req / res。

以下是一些代码:

app.js

ssize_t write(int fd, const void *buf, size_t nbytes);

拦截码

angular.module('MyApp', [
    'ngMaterial',
    'ngMdIcons',
    'ui.router',
    'e3-core-ui.services', 
    'e3-core-ui.utils'  
])
.config(['$stateProvider', '$routeProvider','$httpProvider','$mdThemingProvider', '$mdIconProvider',  function($stateProvider, $routeProvider, $httpProvider, $mdThemingProvider, $mdIconProvider) { 
 $httpProvider.interceptors.push('YourHttpInterceptor');
...

我将非常感谢您的时间和帮助。

1 个答案:

答案 0 :(得分:1)

在Meanjs中,您拥有身份验证控制器

  

意味着/模块/用户/客户机/控制器/ authentication.client.controller.js

但是如果您想在拦截器中使用身份验证服务,请注意注入依赖项并不像在控制器中那样容易。

您需要使用$injector

 var AuthService = $injector.get('Auth');

然后您必须确保您的用户已通过身份验证并在您的请求函数中检查,例如

 if (!Authentication.user) {
     $location.path('/'); // or a login page
 }