oauth-2.0 - oAuth2 oidc 代码流与 Angular8 - 无法读取授权代码表单 URL
问题描述
我正在尝试将 oAuth2 oidc 登录集成到 Angular 应用程序中。在这里,当我调用授权端点以获取授权代码时,我遇到了一个问题,页面正在重定向到代码被刷新并出现在 URL 上的新位置。现在我无法从 URL 读取该代码并继续下一步以获取令牌并成功登录。
step1 : 在样本端点以下调用
location.href = https://ww.abc.com/authorize?client_id=abc123&response_type=code&scope=openid profile
step2:重定向到具有授权_code的新位置
https://ww.xyz.com/myApp?code=abc123qwe
step3 : 无法执行从 url 获取代码的下一段代码。
window.location.search.startsWith('?code=')
如果有人可以帮助我,将不胜感激。
解决方案
通过 S3 和 Cloudfront 在 AWS 中托管 SPA 时,我遇到了类似的问题。收到的响应是“spa?code=xxx”,导致重定向到“spa/”,丢失了授权码。
我的解决方案只是确保注册的重定向 URI 有一个尾随 / 字符。这对你有用吗?
推荐阅读
- reactjs - React Profiler - 开始分析并重新加载页面?
- matlab - 如果输入数字列表而不是单个数字,则函数返回错误数据
- angular - 在Angular 2中将数据从父视图传递到子视图
- ruby-on-rails - 在 Rails 应用程序中添加具有多个 SMTP 服务器的 ActionMailer
- javascript - 无论数组大小如何,随机获取半个字符串数组
- javascript - 使用 javascript 在小型设备上单击锚链接时使我的下拉菜单崩溃
- c# - 动态转换具有多个值的实例数组
- json - 使用 Circe JsonKey 时无法解码
- javascript - 创建用户对象或直接保存在javascript中?
- jsf - Payara & nginx - requestURL 提供本地主机名而不是实际 URL