Python 如何通过FLASK REST API/Vue SPA堆栈使用Google凭据执行用户身份验证

Python 如何通过FLASK REST API/Vue SPA堆栈使用Google凭据执行用户身份验证,python,vue.js,authentication,flask,oauth-2.0,Python,Vue.js,Authentication,Flask,Oauth 2.0,我有一点创建Flask REST API/VueJs SPA原型的经验,并遵循了之前的教程,这些教程使用Flask会话库在标准Flask应用程序中实现用户身份验证 不过,对于我当前的项目,我希望在现有的Flask REST API之上使用人们的Google用户凭据(和OAuth2?)实现用户身份验证。REST API通过基本路由“/”为预编译的客户端VueJS应用程序提供服务,并且用户可以通过客户端应用程序不时使用的自动生成的Swagger文档使用所有其他端点。我希望这些其他路线得到保护,但我不

我有一点创建Flask REST API/VueJs SPA原型的经验,并遵循了之前的教程,这些教程使用Flask会话库在标准Flask应用程序中实现用户身份验证

不过,对于我当前的项目,我希望在现有的Flask REST API之上使用人们的Google用户凭据(和OAuth2?)实现用户身份验证。REST API通过基本路由“/”为预编译的客户端VueJS应用程序提供服务,并且用户可以通过客户端应用程序不时使用的自动生成的Swagger文档使用所有其他端点。我希望这些其他路线得到保护,但我不知道如何做到这一点

我遵循了一个很好的教程,它实现了一个基本的(并且容易理解的)OAuth2客户机/提供者握手和用户身份验证流。我不确定如何修改代码以使用RESTAPI

我尝试过的一件事(没有成功)是创建一个专用的端点,该端点使用标准的Google登录框生成一个弹出窗口,然后尝试捕获生成的令牌,并将其添加到将来向REST API发出的所有请求的标题中(…或类似的内容)。我尝试使用此方法,但遇到此错误,因为窗口需要从主Flask线程内启动(我不确定如何实现此目的):
错误:webview.util.WebViewException:此函数必须从主线程运行。在多线程python中

我认为我缺乏OAuth2/JWT/任何我应该考虑的基础知识,因此我真的在这里寻找一些关于遵循的逻辑/通用流程的理论建议。 注意:必须使用google服务作为身份验证提供程序。 任何帮助都将不胜感激