Quick BI通过SDK代码调用QueryDatasetDetailInfo接口报“the user is not an organizational user of Quick BI”
更新时间:
问题描述
Quick BI通过SDK代码调用QueryDatasetDetailInfo接口查询数据集详情,报错“the user is not an organizational user of Quick BI”。
客户调用的完整代码如下:
private static void qbiCall(){
String accessKey = "XXXXXX";
String secretKey = "XXXXX";
// 单元信息。当前QuickBIs是中心化部署,regionId指定为null即可
String regionId = "null";
// 应用名称,系统默认为quickbi-public,无需修改
String appName = "quickbi-public";
// Quick BI对应的域名, 默认quickbi-public.aliyuncs.com
String domain = "quickbi-public.aliyuncs.com";
// 1:创建DefaultAcsClient实例并初始化。
IClientProfile profile = DefaultProfile.getProfile(regionId, accessKey , secretKey);
DefaultProfile.addEndpoint(regionId, appName, domain);
IAcsClient client = new DefaultAcsClient(profile);
QueryDatasetDetailInfoRequest detailInfoRequest = new QueryDatasetDetailInfoRequest();
detailInfoRequest.setDatasetId("1");
detailInfoRequest.setActionName("QueryDatasetDetailInfo");
detailInfoRequest.setAcceptFormat(FormatType.JSON);
// 3: 发起请求并处理应答或异常(ClientException)
try {
QueryDatasetDetailInfoResponse response = client.getAcsResponse(detailInfoRequest);
// TODO 你的业务处理
} catch (ClientException e) {
// 错误码捕获。但业务出错时,通过捕获ClientException获取抛错信息。
e.printStackTrace();
}
}
问题原因
代码调用该API前,AK对应的用户未登录过Quick BI。
解决方案
Ak信息对应的用户必须是组织管理员,且登录过Qucik BI,同步阿里云信息。
适用于
- Quick BI
文档内容是否对您有帮助?