使用Rally REST API,如何获取用户故事的非API(网站)URL?

时间:2012-05-10 16:31:12

标签: rally agile-central

我正在使用Rally REST API将来自Rally的用户故事数据集成到另一个应用程序中。我从Rally中检索用户故事数据没有问题,但是,我想为其他应用程序的用户提供一个超链接,以便在Rally GUI中单击该用户故事(不使用任何API)。

例如,使用REST API的用户素材的URL类似于:

https://www.rallydev.com/slm/webservice/1.30/hierarchicalrequirement/{ID}

而用户在Rally中用于查看该故事的URL类似于:

https://www.rallydev.com/#/{ProjectID}d/detail/userstory/{ID}

有没有办法从REST API获取用户故事的GUI URL(Rally的最终用户将使用的URL)?

2 个答案:

答案 0 :(得分:6)

ProjectID实际上是可选的,因此您也可以使用这样的链接访问详细信息页面:https://rally1.rallydev.com/#/detail/userstory/12345

但是,不保证此网址格式不会更改。在新的App SDK 2.0中,我们将提供某种版本化的实用程序,用于构建项目的详细信息链接以解决此问题...

答案 1 :(得分:2)

如果您执行GET,例如:

  https://rally1.rallydev.com/slm/webservice/1.30/hierarchicalrequirement/{ID}.js?fetch=Project,ObjectID

你会得到一个结果,如:

{"HierarchicalRequirement": {"_rallyAPIMajor": "1", "_rallyAPIMinor": "30", "_ref": "https://rally1.rallydev.com/slm/webservice/1.30/hierarchicalrequirement/<<STORYID>>.js", "_objectVersion": "129", "_refObjectName": "Story Name", "ObjectID": <<STORYID>>, "Project": {"_rallyAPIMajor": "1", "_rallyAPIMinor": "30", "_ref": "https://rally1.rallydev.com/slm/webservice/1.30/project/<<STORYID>>.js", "_objectVersion": "2", "_refObjectName": "Project Name", "ObjectID": <<PROJECTID>>, "_type": "Project"}, "Errors": [], "Warnings": []}}

然后你可以从响应中拉出STORYID和PROJECTID。然后,您可以使用响应中的Project ObjectID和Story ObjectID将您想要的URL拼接在一起:

https://rally1.rallydev.com/#/ {专案编号} d /细节/用户故事/ {ID}