我在使用 AWS Cognito 提供的 UI 时遇到问题。
当我尝试使用提供的 UI 时,我使用填充的 URL 调用端点:
现在的问题是,在身份验证之后,Cognito 使用 # 来发回所需的参数。结果将如下所示:
我很难在回调页面(这是一个 vue 应用程序)中阅读 id_token 和 access_token 。
如何将 Cognito 配置为使用通常的问号 (?) 来传递查询字符串,或者,如何在哈希 (#) 之后读取传递的参数。
我很欣赏你对此的建议。
我在使用 AWS Cognito 提供的 UI 时遇到问题。
当我尝试使用提供的 UI 时,我使用填充的 URL 调用端点:
现在的问题是,在身份验证之后,Cognito 使用 # 来发回所需的参数。结果将如下所示:
我很难在回调页面(这是一个 vue 应用程序)中阅读 id_token 和 access_token 。
如何将 Cognito 配置为使用通常的问号 (?) 来传递查询字符串,或者,如何在哈希 (#) 之后读取传递的参数。
我很欣赏你对此的建议。
如果您使用的是 Vue.js 路由器,实际上处理哈希部分非常容易。只需将此代码段放在组件中的某个位置即可。参考:https ://router.vuejs.org/api/#the-route-object
let cognitoData = {}
if (this.$route.hash !== "") {
let elementsString = decodeURIComponent(
this.$route.hash.substr(1, this.$route.hash.length)
);
let params = elementsString.split("&");
for (let param of params) {
let values = param.split("=");
cognitoData[values[0]] = values[1];
}
}
// do your business with cognitoData