修改Amplify默认Cognito Hosted UI,解决响应式站点视图切换重定向问题
React响应式网站Amplify Auth切换视图重定向到Cognito Hosted UI问题
问题现象
- 基于React开发的响应式网站,采用Cognito作为Amplify Auth认证服务
- 用户通过自定义登录页完成登录后,切换移动端与桌面端视图时,会被自动重定向到Cognito Hosted UI
预期行为
- 用户在移动端与桌面端视图间切换时,无需重新进行登录验证
- 若系统必须校验登录状态,重定向目标应为自定义登录页而非Cognito Hosted UI
相关配置(aws-exports.js)
const awsmobile = { "aws_project_region": "XXXXX", "aws_cognito_region": "XXXXX", "aws_user_pools_id": "XXXXX", "aws_user_pools_web_client_id": "XXXXX", "oauth": { "domain": "XXXXX", "scope": [ "XXXXX" ], "redirectSignIn": "XXXXXXX", "redirectSignOut": "XXXXXX", "responseType": "code" }, "federationTarget": "COGNITO_USER_POOLS", "aws_cognito_username_attributes": [ "XXXXXX" ], "aws_cognito_social_providers": [ "XXXXXX" ], "aws_cognito_signup_attributes": [ "XXXXXX" ], "aws_cognito_mfa_configuration": "OFF", "aws_cognito_mfa_types": [], "aws_cognito_password_protection_settings": { "passwordPolicyMinLength": 8, "passwordPolicyCharacters": [ "XXXXX" ] }, "aws_cognito_verification_mechanisms": [ "XXXXX" ], "aws_content_delivery_bucket": "XXXXX", "aws_content_delivery_bucket_region": "XXXXX", "aws_content_delivery_url": "XXXXX" }; export default awsmobile;
补充信息
该问题与Amplify-js论坛的#issue2115、#issue5027类似,这两个问题在React Native场景下通过urlopener依赖解决,推测React Web场景下可能存在类似解决方案。
内容的提问来源于stack exchange,提问作者Narayane
相关产品推荐
相关产品推荐

