好的,我有个技术问题。我们在XStudio中开发了一个集成组件,这样我们就可以选择VersionOne的“故事”(XStudio中的"Requirements“)和”缺陷“(XStudio中的"Bugs”)。通过这种方式,您可以从XStudio执行测试和管理结果、度量等,但也可以使用VersionOne的项在XStudio中管理完整的可跟踪矩阵(Products -> Requirements -> Test -> Test and -> Bugs)。我们处理我们这边的联系。
为此,我们使用VersionOne的REST实现了连接器。一切都很好!非常快等。
我们使用来自VersionOne的免费服务器进行了测试,没有问题。我们的Java代码管理cookie,以便它使用“基本身份验证”协议进行身份验证,我们从VersionOne检索cookie,将其存储在本地CookieStore中,并在下一个请求中提供该cookie,这样我们就不必反复进行身份验证。从我们这边看,一切都很顺利。
The content looks like this:
{X-Instart-Request-ID=[7405870175418545839:SEN01-NPPRY09:1396448658:44],
null=[HTTP/1.1 200 OK],
Date=[Wed, 02 Apr 2014 14:24:17 GMT],
Content-Length=[16063],
Expires=[-1],
VersionOne=[Ultimate/14.0.7.6706; Scrum],
Set-Cookie=[.V1.Ticket.ncnuaaa=HFZlcnNpb25PbmUuV2ViLkF1dGhlbnRpY2F0b3LqgwAAB1hTdHVkaW+CjqLWdBzRCP8/N/R1KMorEByFu31RuGY+eqVCi1FHvTE=; path=/; HttpOnly],
Connection=[keep-alive],
Content-Type=[text/xml; charset=utf-8],
Server=[Microsoft-IIS/8.0],
Pragma=[no-cache],
Cache-Control=[no-cache]}但是..。当我们在客户环境上运行我们的代码时,我们不会因为任何原因而得到原始的cookie !?
{cache-control=[no-cache],
content-type=[text/xml; charset=utf-8],
null=[HTTP/1.1 200 OK], expires=[-1],
content-length=[16063],
server=[Microsoft-IIS/8.0],
date=[Wed, 02 Apr 2014 12:34:08 GMT],
pragma=[no-cache]}当我们的代码从连接中获取标题字段时,我们尝试获取"Set-Cookie“字段,它找不到它,弹出窗口就会自动显示。
Map<String, List<String>> headerFields = connection.getHeaderFields();
List<String> cookiesHeader = headerFields.get("Set-Cookie");弹出窗口要求验证(顺便说一句,在"www6.v1host.com/192.33.31.50“上,更多的是"www6.v1host.com/abcded”--也许这里有线索吗?)
如果我们在您的服务器上进行身份验证,一切正常进行,一切正常。但是,我们不应该再次进行身份验证,因为我们在前面的连接中进行了验证:
String plainAuth = username + ":" + password;
encodedAuth = ("Basic " + new String(Base64.encode(plainAuth.getBytes()))).replaceAll("\n", "");
connection.setRequestMethod("GET");
connection.setRequestProperty("Authorization", encodedAuth);
connection.setRequestProperty("Connection", "keep-alive");所以,不确定这是否是因为身份验证不起作用(这将解释为什么cookie没有返回,弹出窗口要求用户显式验证),或者在cookie管理方面有一些特定的内容.
你知道这里会发生什么事吗?
此代码在使用Basic的许多其他不同的REST上运行良好。还有饼干。提前谢谢你,
发布于 2014-04-07 17:03:02
听起来你是为XQual工作的,XStudio的开发人员。如果是的话,请联系我。我们总是很高兴列出另一个集成。
假设这只对1位以上的客户有效,我有几条建议:
关于你的具体问题,我有一些预感:
为了更好地诊断,您能分享一些代码来说明如何构造请求URL吗?
https://stackoverflow.com/questions/22849300
复制相似问题