passport-azure-ad_无限刷新问题
问题描述
passport-azure-ad 是我们在使用node express作为服务器,passport用于验证登陆,同时又需要去azure第三方认证登陆时需要用到的插件。
但是在使用过程中我们可能会遇到这样一种情况,就是明明我们的所有配置都已经配置好了,但是会遇到无限 回调的情况,具体表现形式就是我们利用微软账号登陆成功之后,页面会不断刷新,最终提示我们无法成功登录。
这个不断刷新的过程其实是, 首先发送一个OAuth登陆流程过程中的认证请求,认证成功之后会回调你事先配置好的redirectURL,这个url一般是我们自己服务器需要处理的请求,在这个请求中你需要用到passport的authenticate去认证是否登陆成功,如果这个认证中遇到id-token为空的情况,就会再次发起请求,一旦认证成功又会调用redirectURL。
在这个过程中,如果你确实在微软那里认证成功了,但是回调自己的服务器请求时又确实没有拿到id-token,就会出现无限回调的情况。