Rally REST webservice API入门

时间:2012-11-12 06:08:51

标签: rest rally

在开始从.NET MVC webclient调用Rally REST Web服务之后获得了一些帮助。

我在这里获得了网络服务信息:

https://rally1.rallydev.com/slm/doc/webservice/

所以我可以看到我可以使用URL来访问Rally中的信息 - 类似于:

https://rally1.rallydev.com/slm/webservice/1.39/task?query=((Owner.Name
= owner@blah.com.au) and (State != Completed))&order=Rank&fetch=true&stylesheet=/slm/doc/webservice/browser.xsl

然而,我不清楚的是如何在提出请求之前进行身份验证?

我是REST Web服务的新手(已经做了一段时间的SOAP / WSDL) - 所以看起来似乎没有REST你应该添加对某些东西的引用来创建客户端类?它是否正确?您只需使用URI创建HTTPRequest - 并进行调用,获取HTTPResponse(我希望可以使用它)。

许多示例似乎都有特定的服务/ api类,他们正在调用方法或访问属性 - 所以我不确定是不是因为他们使用的是SOAP而不是REST - 或者他们自己创建了它们

也许我正在查看错误的文档,因为它似乎认为您知道如何进行身份验证。或者我错过了参考文献?

2 个答案:

答案 0 :(得分:8)

您发现的主要Web服务文档非常适合探索数据模型中的对象和字段。由于您使用的是.NET,因此您可能需要查看我们的.NET REST工具包:

http://developer.rallydev.com/help/rest-api-net

您将找到一些示例,帮助您开始使用它提供的基本CRUD +查询操作。身份验证是为您完成的。如果你遇到困难,那么在stackoverflow上有很多关于工具包的问题和代码示例。

答案 1 :(得分:2)

我知道问题已经过时了,但这可能有助于其他人。作为get()请求的一部分,您需要使用base64编码的用户名和密码传递基本身份验证标头。我在Atlassian documentation page上找到了此信息,并成功将其应用于Rally API 3.0(也应该与2.0一起使用)。因此,在您的get()请求中,请添加类似于以下内容的标头:

auth_header = 'Authorization : Basic ' + base64_encode('username:password')