javascript - AWS cognito 注册和登录 - 如何存储池和应用程序 ID
问题描述
我正在使用此示例来设置具有AWS Cognito用户池的注册/登录 UI:https ://medium.com/@gmonne/custom-authentication-using-aws-cognito-e0b489badc3f
作者建议通过创建一个 config.js 文件来保持用户池和应用程序 ID 的私密性,该文件将此信息保存在两个全局变量中。来自readme.md
:
在运行此代码之前,您应该在
javascript
名为config.js
. 在这里,您应该使用名称在窗口对象上设置“用户池”ID 和应用程序客户端 ID:USER_POOL_ID
和CLIENT_ID
。
我在 config.js 中设置变量如下,但出现USER_POOL_ID is not defined
错误。
var USER_POOL_ID: "us-east-1_#######";
var APP_CLIENT_ID: "7pcmh9gre807########";
从示例中的 cognito.js 文件:
(function(win, CognitoUserPool) {
var CognitoUserPool = window.AmazonCognitoIdentity.CognitoUserPool,
AWSCognito = window.AWSCognito,
CognitoIdentityServiceProvider = AWSCognito.CognitoIdentityServiceProvider,CognitoUserAttribute = CognitoIdentityServiceProvider.CognitoUserAttribute,
CognitoUser = CognitoIdentityServiceProvider.CognitoUser,
AuthenticationDetails = CognitoIdentityServiceProvider.AuthenticationDetails,
UserPool = new CognitoUserPool({
UserPoolId : window.USER_POOL_ID, // Your user pool id here
ClientId : window.CLIENT_ID, // Your client id here
如自述文件中所述,在窗口对象上设置 ID 的语法是什么?
解决方案
=
使用not设置变量:
,因此请更改config.js
:
var USER_POOL_ID = "us-east-1_#######";
var APP_CLIENT_ID = "7pcmh9gre807########";
不清楚这个文件是如何被使用的,但如果你想直接设置窗口对象,你会做
window.USER_POOL_ID = "us-east-1_#######";
window.APP_CLIENT_ID = "7pcmh9gre807########";
并且 cognito.js 代码没有使用正确的变量名,它没有APP_
前缀,所以将最后一行更改为:
ClientId : window.APP_CLIENT_ID, // Your client id here
推荐阅读
- python - 无法在 Azure Databricks 中通过 PyPi 安装 python 包
- ios - 将带有其他参数的图像的 base64String 发布到服务器目标 c
- reactjs - 如果我想允许其他数字输入字段为空,我是否必须将输入值保存为字符串?
- shadow-dom - Shadow DOM 如何影响 stenciljs 中的组件生命周期方法
- javascript - 有没有办法通过底层组件层进行射线照相
- git - 如何存储 Gerrit 密码?
- ionic-framework - 在企业防火墙后面安装 Ionic
- django - 使用 CustomUser 作为作者给出数据库问题?
- javascript - console.log 在事件提交中不起作用
- azure-devops - 如何从 Azure DevOps(VSTS 工具)启动浏览器 (IE)