如何使用REST API登录RQM?

5
我正在尝试使用REST API与IBM Rational Quality Manager服务器进行通信。我正在使用RESTClient浏览器插件,当浏览器登录时,一切都按预期工作。记录一下,我的请求如下:
https://server/qm/service/com.ibm.rqm.integration.service.IIntegrationService/resources/project/testscript/urn:com.ibm.rqm:testscript:42

然而,如果我等待足够长的时间让RQM注销,REST API会提示我需要重新登录才能继续(如下所示)。我相信这可以通过API本身完成,因为RQM附带了RQMUrlUtility,它接受用户名和密码,并运行基本上与我正在使用的REST请求相同的请求:
java -jar RQMUrlUtility.jar -command GET -user JazzUserID -password JazzPassword -filepath pathtoFile -url REST_URL

到目前为止,我已经找到了这个话题,解释了如何使用HTTP基本身份验证登录。遵循这个建议,我已经添加了Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=(不是我的真实密码)到请求中,但是RQM仍然无法登录。我还尝试将User-Agent设置为虚假值,并像这里描述的那样,在X-Jazz-CSRF-Prevent头部中发送JSESSIONID的值,但无论这些标头是否存在,我都会得到相同的响应:
Status Code: 200 OK
Cache-Control: no-cache="set-cookie, set-cookie2"
Connection: Keep-Alive
Content-Encoding: gzip
Content-Language: en-US
Content-Type: text/html; charset=UTF-8
Date: Tue, 26 Jan 2016 15:48:02 GMT
Expires: Thu, 01 Dec 1994 16:00:00 GMT
Keep-Alive: timeout=10, max=100
Set-Cookie: JazzFormAuth=Form; Path=/qm; Secure
x-com-ibm-team-scenario=ac55f959-c738-4ef0-854d-6e37648edcba%3Bname%3DInitial+Page+Load%3Bextras%3D%2Fqm%2Fauth%2Fauthrequired%2C1453823282026; Path=/
Transfer-Encoding: chunked
X-Powered-By: Servlet/3.0
X-com-ibm-team-repository-web-auth-msg: authrequired

有经验的RQM API用户能告诉我哪里出了问题吗?或者我可能漏掉了某些基本的,大多数RESP APIs都具备的东西?


问题在两周内被浏览了23次... SO是询问Web API的正确场所吗?我错过了更合适的网站吗? - Dmitry Grigoryev
与其他服务相比,具有IBM服务经验的人可能并不多。 - Seán Hayes
看起来很奇怪,你收到了200响应而不是401或403,这并不符合RESTful的规范。 - Seán Hayes
1个回答

4

这可能是您的标题名称吗?

Authorisation: Basic dXNlcm5hbWU6cGFzc3dvcmQ= 

应该是这样:

Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ= 

注意这里有一个“z”。

好的发现!不幸的是,这个错别字只出现在我的问题中,而不是我的代码中。我实际上已经尝试过 Authorisation: Basic dXNlcm5hbWU6cGFzc3dvcmQ=,但无论我指定哪些头信息,RQM响应都保持不变。 - Dmitry Grigoryev
1
这个有帮助吗?http://www.ibm.com/developerworks/rational/tutorials/testrqmrestapiwithrptextensionforsoaquality/ - Seán Hayes
这看起来很有帮助,但我的 RQM 实例在任何 /jazz 资源上返回 404 错误。下周我们会有几个 IBM 的人可用,我会问问他们(也许 RQM 没有正确配置)。 - Dmitry Grigoryev

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接