首页 > 解决方案 > 来自 chrome 扩展中 POST 请求的集会“未授权执行操作:密钥无效”的间歇性错误

问题描述

我使用 Rally 的 WSAPI v2.0 开发了一个 chrome 扩展,它基本上做了以下事情:

  1. 获取用户和项目,并存储它们
  2. 每次获取当前迭代
  3. 发送发布请求以创建工作项

对于第三步,我有时会收到错误["Not authorized to perform action: Invalid key"]自上月底以来。

[更新]如果我在使用扩展程序通过 apikey 发送请求之前通过 SSO 登录 Rally 网站,每次都会重现错误。 由于我无法控制最终用户的习惯,在我的扩展程序中通过 apikey 发送后续请求的最佳做法是什么?

我确实看到了一些类似的帖子,但没有一个有帮助……万一它有帮助:

function initXHR(method, url, apikey, cbFunc) {
  let httpRequest = new XMLHttpRequest();
  ...
  httpRequest.open(method, url);
  httpRequest.setRequestHeader('Content-Type', ' application\/json');
  httpRequest.setRequestHeader('Accept', ' application\/json');
  httpRequest.setRequestHeader('ZSESSIONID', apikey);
  httpRequest.onreadystatechange = function() {
    ...
    };
  return httpRequest;
}
...
usReq = initXHR ('POST', baseURL+'hierarchicalrequirement/create', apikey, function(){...});

任何人有任何想法/建议?太感谢了!

标签: rally

解决方案


当 API 密钥同时配置了只读和完全访问权限时,我看到了这个错误。我会首先确保您的密钥只有完全访问权限。


推荐阅读