You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用generateEmbedUrlForRegisteredUser嵌入Quicksight仪表板出现CORS错误

你遇到的CORS错误是AWS Quicksight服务的原生限制,generateEmbedUrlForRegisteredUser 这类嵌入URL生成接口不允许直接从前端浏览器端发起调用,所有这类调用必须放在后端服务执行,对应解决方案如下:

  • 将Quicksight嵌入URL生成逻辑、AssumeRoleWithWebIdentityRequest请求和AWS凭证生成逻辑全部迁移到你的后端服务,后端调用AWS SDK不存在CORS限制,同时也能避免前端暴露AWS凭证带来的高危安全问题。
  • 你的Angular前端新增内部接口请求后端服务,仅传递必要的业务参数(比如要嵌入的Dashboard ID、当前登录用户标识等),由后端完成嵌入URL生成后返回给前端。
  • 拿到嵌入URL之前,先在AWS Quicksight控制台配置前端域名白名单,否则后续iframe嵌入渲染时还会出现跨域问题:
    1. 打开AWS Quicksight控制台,点击右上角个人头像进入「管理Quicksight」页面
    2. 左侧菜单栏选择「域和接入点」
    3. 添加上你的Angular应用的完整访问域名(需要包含协议、端口,用非标准端口的话也要带上),保存后等待5-10分钟配置生效。
  • 修正你代码里的参数错误:你当前配置里的onLifetimeInMinutes是错误参数名,正确参数名为SessionLifetimeInMinutes,该错误会导致接口请求即使绕过CORS也会返回失败。

前端拿到后端返回的嵌入URL后,直接插入iframe的src属性即可完成仪表板嵌入。

内容的提问来源于stack exchange,提问作者Thais Molica

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 04:54:04