场景
我正在使用以下代码从节点js(v8.10)lambda函数创建嵌入式仪表板URL。
@foreach($mainCategories as $cat)
// .... your code
@endforeach
**
**
const AWS = require('aws-sdk');
var quicksight = new AWS.QuickSight({
region: 'us-east-1'
});
return quicksight.getDashboardEmbedUrl({
'AwsAccountId': 'XXXXX',
'DashboardId': 'YYYYYYY',
'IdentityType': 'IAM',
'ResetDisabled': true,
'SessionLifetimeInMinutes': 100,
'UndoRedoDisabled': false
}).promise().then((res) => {
console.log('Response: ');
console.log(res);
}).catch((err) => {
console.log('Error: ');
console.log(err);
})
知道为什么会这样吗?我是否也必须在quicksight门户中添加用户?我认为快速视认-认知整合是即插即用。
预先感谢您的帮助。
答案 0 :(得分:1)
请参考以下线程,该线程给出了以编程方式生成嵌入式URL的详细过程。
答案 1 :(得分:0)
查看此示例存储库。来自亚马逊工程师。使用Cloudformation。
https://github.com/aws-samples/amazon-quicksight-embedding-sample
答案 2 :(得分:0)
我遇到了类似的问题,出现了QuickSightUserNotFoundException错误。
我关注了这篇文章:
QuickSightUserNotFoundException When getting a AWS Quicksight embed URL with cognito user
要点是“注册用户时,IdentityType必须为IAM,但对于getDashboardEmbedUrl,必须输入QUICKSIGHT,并且您需要传递UserArn,您可以在registerUser的响应中找到它”