Javascript 使用API键为外部站点生成图表,但显示登录屏幕

Javascript 使用API键为外部站点生成图表,但显示登录屏幕,javascript,sdk,rally,Javascript,Sdk,Rally,我试图在一个webapp上创建一个燃尽图,并使用loginkey示例代码,但将loginkey切换到了apikey(下面的代码)。我的API密钥放在它显示CorrectAPIKeyHere的位置,实际id用于workspace\u id和project\u id。我仔细检查了一下,确定是正确的钥匙。以下是显示的内容: 但是,如果我已经登录到Rally,代码就可以工作。我的代码有什么遗漏吗 <script type="text/javascript" src="https://rally1.

我试图在一个webapp上创建一个燃尽图,并使用loginkey示例代码,但将loginkey切换到了apikey(下面的代码)。我的API密钥放在它显示
CorrectAPIKeyHere
的位置,实际id用于
workspace\u id
project\u id
。我仔细检查了一下,确定是正确的钥匙。以下是显示的内容:

但是,如果我已经登录到Rally,代码就可以工作。我的代码有什么遗漏吗

<script type="text/javascript" src="https://rally1.rallydev.com/apps/1.26/sdk.js?apiKey=CorrectAPIKeyHere"></script>
<script type="text/javascript" src="https://rally1.rallydev.com/apps/1.26/sdk.js"></script>
<script type="text/javascript">
    function initPage() {
      console.log(gon.project_oid);
      var rallyDataSource = new rally.sdk.data.RallyDataSource("workspace_id", project_id,"true","false");

      console.log($(main_content).width());

      var config = {
          report: rally.sdk.ui.StandardReport.IterationBurndown,
          height: 400,
          iterations: iteration_id
      };
      var report = new rally.sdk.ui.StandardReport(config);
      report.display("burndown_chart");
    }

    rally.addOnLoad(initPage);
</script>

函数initPage(){
console.log(gon.project_oid);
var rallyDataSource=new rally.sdk.data.rallyDataSource(“工作区id”,项目id,“true”,“false”);
log($(main_content.width());
变量配置={
报告:rally.sdk.ui.StandardReport.IterationBurndown,
身高:400,
迭代次数:迭代次数
};
var report=new rally.sdk.ui.StandardReport(配置);
报告显示(“燃耗图表”);
}
rally.addOnLoad(初始页面);

不幸的是,有两种不同的因素导致了你当前的糟糕时期。App SDK 1.x中不支持API密钥。支持StandardReport组件的Analytics1服务也不支持它们


因此,唯一的出路是回到使用LoginKey,这是关于安全性的常见警告,等等。你有一个与LoginKey一起工作的应用程序吗?

好消息!Api密钥现在在App SDK 2.1和StandardReport组件中得到完全支持,因此现在应该完全可以做到这一点

一些有用的链接:

从外部嵌入应用程序:

StandardReport组件:

由于帐户限制,我无法测试LoginKey(我正在获取只读帐户以生成LoginKey)。不过,我会更新这篇文章,一旦我发现更多!(现在,当我转到密钥生成页面时,“生成”按钮被禁用-我假设这是因为我的帐户类型错误。)