javascript - 带有 S3 静态站点前端和 EC2 API 后端的 OAuth2 重定向 URL 应该是什么?
问题描述
我正在使用 React 应用程序运行通常的设置,其中我使用 S3 和 Cloudfront 作为我的单页应用程序的前端,然后让它们查询 EC2 后端以获取他们需要的任何数据。这很好用。
我遇到的问题是创建 OAuth2 授权代码流。我让它工作,客户端被重定向到谷歌登录,但我现在困惑的是我应该在成功认证后将用户重定向到哪里。
“前端”基本上www.website.com
是托管在配置为用作静态网站的 S3 存储桶中,而“后端”是www.website.com/api/
. 我设置了 Cloudfront,以便www.website.com/api/
调用重定向到 EC2 实例,并且所有其他路由都重定向到 S3 存储桶。
在这种情况下,我应该指定什么作为重定向 URL?似乎是这样的,如果我指定“后端”,那么在后端 EC2 路由被命中后,重定向回“前端”是行不通的。
是否推荐将 OAuth2 重定向 URL 指定到“前端”(静态 S3 站点),并有一个前端路由,然后向 EC2 后端发出请求?我担心的是前端(以及因此用户)不应被授予访问 OAuth2 响应路由的响应数据的权限,但我不确定是否有任何替代方案。
解决方案
推荐阅读
- node.js - req.user undefined using Express & Node & Passport
- node.js - 当 AWS Lambda 是 ALB 目标时如何使用它的主机名
- javascript - 在 JavaScript 列表中检查对象是否存在的最快方法
- java - 有什么方法可以为我的邻接列表图修复我的主类?
- javascript - 如何在点击时替换 HTML 元素?
- python - 查找最大值并从列表中提取数据
- python - 我正在尝试从上一行和下一列中的值中减去一个值
- php - password_verify 不匹配
- firebase - 当可以通过 Firebase 控制台创建项目时,采用最新的 App + Web 属性的目的是什么?
- haskell - 如何指示黑线鳕链接到 hackage 包的 hackage 文档?