我有一个节点服务器,可以使用oauth向第三方进行身份验证(就像堆栈溢出一样)。当第三方点击我的回调并授权请求并获得访问令牌和其他信息时,我想将该信息传递给我制作的React应用,以便React应用可以直接使用访问令牌进行REST调用来自提供商。
我是节点和节点的新手,但能够使节点服务器能够获取访问权限并刷新令牌信息。我是“服务”和服务React应用程序的新手。我一直在使用
app.use('/client', express.static(__dirname + '/client'));
来提供React应用,这在一定程度上发挥了作用。我目前所处的情况超出了范围,我想学习如何在回调授权后将oauth信息与我的react应用一起发送回去。我正在使用的流程在回调中授权该请求,然后重定向回/ client路由以呈现该应用程序,该应用程序无法将任何oauth信息传递给客户端。有什么方法可以在重定向之前设置标头以获取oauth信息,然后如何在react应用中获取该oauth信息?
我在这里发布是为了获取一些我应该阅读的途径和资源方面的建议,以及一些有关我当前状况的建议。我很想学习Express的更多知识,目前正在寻找用我需要的信息设置标题,然后将react app作为文件或其他内容提供的服务,我不确定。
感谢所有进阶!
我会尽力回答您的问题。因此,SPA(单页应用程序)和OAuth登录的问题在于,通过重定向传输数据的唯一方法是URL查询字符串。JWT(JSON Web令牌)将允许这样做,但是仅在移动原生SDK-s中受支持。Web解决方案,此处不使用弹出流:
对于Node.js,我建议使用Passport.js OAuth模块,登录流程为:
这只是您可能使用的一种可能的流程,您也可以使用会话/ cookie解决方案来代替JWT。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句