无法从 ruby rest-client 程序调用 Rally LBAPI WS。任何

Unable to invoke Rally LBAPI WS from ruby rest-client program. Any

我已经能够通过以下 POST 请求使用 DHC(Dev HTTP 客户端)查询集会分析 API http://rally1.rallydev.com/analytics/v2.0/service/rally/workspace/1234/artifact/snapshot/query.js&API_Key=key123 body { "find":{ "ObjectID": 4321 } }

有什么方法可以让我从 Ruby 做到这一点?我已经使用 'rest-client' 但我只会不断收到错误 (400, 403, ....) 有没有人能够做到这一点? 这可能使用 curl 吗?

可以同时使用 curl 和 ruby。您需要将 ZSESSIONID header 值设置为等于您的 API 密钥。此处的卷曲示例(随机工作区 OID 和 API 键):

curl -X POST \
'https://rally1.rallydev.com/analytics/v2.0/service/rally/workspace/12345678910/artifact/snapshot/query' \
-H 'content-type: application/json' \
-H 'accept: application/json' \
-H 'ZSESSIONID: _m31qjdm43Ou74h0cACk28zgBUOPm50Xtna2PhQ2L22' \
--data '{"find":{"FormattedID": "DE9", "__At": "current"},"fields":true,"start":0,"pagesize":10,"removeUnauthorizedSnapshots":true}' \
--compressed

在 Ruby 中也很简单。以下要点:

包含一个 Ruby 连接助手,用于连接到 Rally 的 Lookback API。第二个 Gist 包含一个使用连接助手的示例以及表示查找查询的哈希 object。 Ruby 示例使用 httpclient gem 而不是 rest-client gem,但概念是相同的。

这个 API 变了吗?我们最近更改了用户名,从那时起,运行 查询示例 returns {"_rallyAPIMajor":"2","_rallyAPIMinor": "0","Errors":["Not Found"],"Warnings":[]} 对于所有查询。