如何使用REST API登录RQM?

Dmi*_*yev 5 rest http-headers ibm-jazz

我正在尝试使用其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
Run Code Online (Sandbox Code Playgroud)

但是,如果我等待RQM注销,REST API说我需要重新登录才能继续(见下文).我很确定通过API本身可以做到这一点,因为RQM附带了RQMUrlUtility,它接受用户名和密码,并运行与我正在使用的基本相同的REST请求:

java -jar RQMUrlUtility.jar -command GET -user JazzUserID -password JazzPassword -filepath pathtoFile -url REST_URL
Run Code Online (Sandbox Code Playgroud)

到目前为止,我已经找到了这个主题,解释了如何使用HTTP基本身份验证登录.根据这个建议,我已经Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ=(但不是我的真实密码)添加了请求,但RQM仍然无法登录.我也试着设置User-Agent假值,以及来自发送值JSESSIONIDX-Jazz-CSRF-Prevent所描述的头在这里,但无论这些报头的存在与否,我得到同样的回应:

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
Run Code Online (Sandbox Code Playgroud)

任何有RQM API经验的人都可以告诉我什么是错的吗?或许我遗漏了一些基本的东西,对于大多数RESP API来说都很常见?

Seá*_*yes 4

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

Authorisation: Basic dXNlcm5hbWU6cGFzc3dvcmQ= 
Run Code Online (Sandbox Code Playgroud)

大概应该是:

Authorization: Basic dXNlcm5hbWU6cGFzc3dvcmQ= 
Run Code Online (Sandbox Code Playgroud)

注意“z”。