Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用基于Cookie的REST后端时在AngularJS中进行身份验证?_Javascript_Angularjs_Node.js_Rest_Cookies - Fatal编程技术网

Javascript 使用基于Cookie的REST后端时在AngularJS中进行身份验证?

Javascript 使用基于Cookie的REST后端时在AngularJS中进行身份验证?,javascript,angularjs,node.js,rest,cookies,Javascript,Angularjs,Node.js,Rest,Cookies,我正在使用AngularJS、NodeJS和一个应用服务器,它为我提供了所有基于REST的服务。典型架构如下所示:- 现在的问题是我让cookie来回传递来管理请求和响应。这有助于我维持会话。但我怀疑这不是管理应用程序的身份验证和授权的正确方法 我想知道如何最好地维护基于REST的服务器为我提供cookie(JSESSIONID)的会话。请指出参考资料,如果我做错了什么,请告诉我 注意:我阅读响应代码是为了了解用户是否登录。请帮助。REST服务应该是无状态的。restapi()的良好回顾 您传

我正在使用AngularJS、NodeJS和一个应用服务器,它为我提供了所有基于REST的服务。典型架构如下所示:-

现在的问题是我让cookie来回传递来管理请求和响应。这有助于我维持会话。但我怀疑这不是管理应用程序的身份验证和授权的正确方法

我想知道如何最好地维护基于REST的服务器为我提供cookie(JSESSIONID)的会话。请指出参考资料,如果我做错了什么,请告诉我


注意:我阅读响应代码是为了了解用户是否登录。请帮助。

REST服务应该是无状态的。restapi()的良好回顾

您传递的cookie用于身份验证。它告诉服务器该用户已通过身份验证,为了提高效率,可以跳过此步骤

授权是另一个主题。这是经过身份验证的用户可以在系统中执行的操作。通常,为了提高效率,用户的角色和权限也存储在会话对象中。然而,也有例外


例如,oAuth()使用结合了身份验证和授权的令牌。令牌“告诉”系统您是谁,以及您可以做什么

您所展示的流程与我和许多其他人在使用我的Web应用程序时所使用的流程非常相似,但是,只要您使用REST框架,基于会话或cookie的身份验证就不被认为是最佳选择,因为它应该是无状态的

此外,基于cookie的身份验证不能很好地与CORS和CSRF以及来自android和IOS应用程序的身份验证配合使用。首选基于令牌的身份验证。有关更多信息,请参阅以下链接

让我知道这是否有用