尝试从 gitlab 检索配置信息时获取“无效的 cookie 标头:“Set-Cookie:experimentation_subject_id ...”

Posted

技术标签:

【中文标题】尝试从 gitlab 检索配置信息时获取“无效的 cookie 标头:“Set-Cookie:experimentation_subject_id ...”【英文标题】:Getting "Invalid cookie header: "Set-Cookie: experimentation_subject_id ..." while trying to retrieve the config info from gitlab 【发布时间】:2020-10-08 08:56:42 【问题描述】:

我正在用 spring config-server 试验一个小项目。配置仓库由受密码保护的 gitlab 维护。当我启动配置服务器项目时,我收到以下警告,也没有读取来自 gitlab repo 的属性。

Invalid cookie header: "Set-Cookie: experimentation_subject_id=ImJiYTI3NmEzLWJmMWsfdfsdefdfiMmJlLTBjMTM1Njk3Mzg1MiI%3D--7a607dacd6c529dba85t5yd8067da9e1298f6ed; domain=.example.com; path=/; expires=Mon, 18 Jun 2040 09:52:48 -0000; secure; HttpOnly". Invalid 'expires' attribute: Mon, 18 Jun 2040 09:52:48 -0000

config-server - application.properties

server.port=8888

spring.cloud.config.server.git.uri=https://gitlab.example.com/example/config-service.git
spring.cloud.config.server.git.username=*******
spring.cloud.config.server.git.password=*******
spring.cloud.config.server.git.skip-ssl-validation=true
spring.cloud.config.server.git.clone-on-start=true

人们提出了类似的问题,在不同的项目中抛出了异常,少数解决方案是升级 apache 客户端 http 客户端版本。但是在检查配置服务器时,我使用的 apache http 客户端已经是 4.5.10 版本了。

这里是否缺少其他配置?请让我知道您的意见。谢谢。

【问题讨论】:

【参考方案1】:

我遇到了同样的问题,而我们根本不需要 cookie(无状态客户端)。 我不知道您是否是这种情况,但是您可以禁用 Spring 使用的 ApacheHttpClient 的 cookie 管理。 disableCookieManagment() 最终解决了这个错误。

@Bean
public ApacheHttpClient httpclient() 
    return new ApacheHttpClient(
            org.apache.http.impl.client.HttpClientBuilder
                    .create()
                    .disableCookieManagement()
                    .disableConnectionState()
                    .build());

【讨论】:

以上是关于尝试从 gitlab 检索配置信息时获取“无效的 cookie 标头:“Set-Cookie:experimentation_subject_id ...”的主要内容,如果未能解决你的问题,请参考以下文章

gitlab的无效双因素代码

无效的列名“数学” - 从数据库中检索数据

从表单中检索信息以进行 PDO 查询的问题

在卡中获取令牌以从配置文件中检索用户图像

如何访问 gitlab 问题迭代更改

从 PayPal 检索 PayKey 时出现错误 580022(无效的 AccountID)。应该在接收者的 AccountID 中放置啥以及在哪里可以找到该信息?