Ron*_*537 8 authentication client-server node.js passport.js angular
我已经为客户端创建了角度为2的Web应用程序,并为服务器端创建NodeJS
了express
框架.
对于客户端,我生成了angular-cli
在a上运行的项目lite-server
,因此我的客户端和服务器在2个不同的服务上运行.
我想整合ADFS
身份验证.要实现身份验证,我正在使用passport-saml
包.我的服务器端有一个中间件API
,需要用户进行身份验证.
直接到达服务器(没有客户端)时,身份验证过程正常.
但是,我无法访问API
通过@angular/http
.我尝试了一个GET
来自服务器的简单请求(在端点使用中间件),因此我得到了没有重定向的身份验证页面(我不认为这是核心问题,但实际的实现是).
在对服务器和客户端使用单独的服务时,如何正确实现身份验证?
当客户端向服务器执行 GET 操作时,您没有提供有关失败响应的详细信息。是400吗?401?404?500?您收到 CORS 错误了吗?
为什么您使用 GET 作为登录端点。您应该在 POST 负载中直接发布凭据吗?
不管怎样,在你的 angular2 代码中,你应该有一个带有登录方法的身份验证服务。登录方法应该做类似的事情..
login(credentials) {
return http.post(your_server_url, payload);
}
Run Code Online (Sandbox Code Playgroud)
然后,您可以订阅登录方法返回的 Observable,如果router.navigate
主页一切正常或不顺利,则显示登录错误消息。
归档时间: |
|
查看次数: |
737 次 |
最近记录: |