Rest 为什么GoogleOAuthAPI需要重定向url?

Rest 为什么GoogleOAuthAPI需要重定向url?,rest,http,security,authorization,google-oauth,Rest,Http,Security,Authorization,Google Oauth,我正在尝试使用google-OAuth2API设置授权流。 任务是在我的web应用程序(由前端和后端部分组成)中授权使用google帐户的用户 文档中的流程包括两个步骤: 1) 获取身份验证代码 2) 将身份验证代码交换为令牌 在我的流程中,FE客户端从google获得一个身份验证代码并提交给BE,BE然后将其交换为令牌,因此不使用重定向URL(有时称为回调URL) 我不明白为什么谷歌API要求我为第二步提供重定向\u uri?因为这一步是由服务器执行的,而不是由浏览器执行的,所以我看不出这条信

我正在尝试使用google-OAuth2API设置授权流。 任务是在我的web应用程序(由前端和后端部分组成)中授权使用google帐户的用户

文档中的流程包括两个步骤:
1) 获取身份验证代码
2) 将身份验证代码交换为令牌

在我的流程中,FE客户端从google获得一个身份验证代码并提交给BE,BE然后将其交换为令牌,因此不使用重定向URL(有时称为回调URL)

我不明白为什么谷歌API要求我为第二步提供
重定向\u uri
?因为这一步是由服务器执行的,而不是由浏览器执行的,所以我看不出这条信息有任何意义。服务器只需调用
POST/oauth2/v4/token
google端点并接收token作为响应

参见第4步,根据,这是为了防止窃取
访问\u令牌。如果服务没有检查初始的
重定向\u uri
,授权代码将被发送到黑客的
重定向\u uri
,然后黑客可以将其交换为
访问令牌
,即非法访问用户帐户。要实际获取
访问\u令牌
,再次指定
重定向\u uri
,这一次必须由服务器对照为该应用程序注册的uri进行检查。在这一点上,黑客被挫败,因为伪造的
重定向uri
与任何合法的uri都不匹配。显然,一些服务器在授权阶段没有检查
重定向uri
,在请求
访问令牌时再次发送
重定向uri
是为了提供最终的安全检查