Gerrit 2.8.5 从 http 请求中检索 xGerritAuth

Gerrit 2.8.5 retrieving xGerritAuth from http request

我是 Gerrit 自定义和 运行 针对 Gerrit 服务器的测试的新手。

在 2.4 版本的 Gerrit 中,http 登录请求(在我的例子中来自 python 文件)将 return 具有 xsrfToken 字段和值的结果作为 gerrit_hostpagedata(例如,在请求结果中您会看到 gerrit_hostpagedata.xsrfToken=<some value>)。

在 2.8 中,这已更改,因此 xGerritAuth 现在是令牌值的字段。但是,服务器对我的 http 登录请求(通过 python)的响应不是 returning xGerritAuth field/value 对。

在 Gerrit 的网络 UI 中,如果我在登录时查看源代码,我可以看到 xGerritAuth field/value 对。

所以我想知道有没有办法在对 http 登录请求的响应中获取 xGerritAuth 值 return?

请注意,gerrit/common/data/HosptPageData.java 已更改以反映新令牌名称 (xGerritAuth)。

谢谢 -迈克

您需要从 HTML 响应中解析出 xGerritAuth(当您将凭据发送到 /login/ 时得到)。我在我的 gerrit-rest-java-client 中正是这样做的。 Check out this code。 (tryGerritHttpAuthextractGerritAuth)。

另一种方法:使用 Gerrit 的(新)REST API。在那里,您可以使用您在 Gerrit 帐户设置中设置的 HTTP 凭据。 See REST API’s documentation.