[spring-projects/spring-boot]收紧EndpointId命名规则

2024-04-17 571 views
9

理想情况下,我们希望命名规则EndpointId更严格一些,并限制-.字符。由于某些 Spring Cloud 端点,我们无法在 2.0.x 中执行此操作。

回答

7

嗨@philwebb,这是我的贡献。如果缺少什么,请告诉我。

8

@Crow-EH 感谢您的贡献,我已在 PR 中添加了注释。不幸的是这个问题描述不够清楚。对于 2.1,我们仍然希望支持-.但只是记录一个警告。

8

@spencergibb 这可能会影响 Spring Cloud。如果我们进行此更改,是否可以迁移这些端点?

3

没问题,感谢您抽出时间@philwebb

3

@philwebb它将影响Spring Cloud。如果我们限制端点 id,我们可以在注释中添加一个类似于management.endpoints.web.path-mapping.用户总是希望点击 /hystrix.stream。

6

@spencergibb 是的,我们知道这一点,所以我们引入了 #14841 (看看这个测试。希望您可以将端点重命名为hystrixStream并注册一个PathMapperbean 来提供默认路径。用户仍然可以用属性替换路径,如果他们想要。

3

@spencergibb 如果现在进行此更改为时已晚,我们可以将其推迟到 2.2

9

PathMapper看起来不错。我认为团队希望推迟到 2.2,同时在 2.1 中记录警告。

2

抱歉,我的意思是我们是否也应该推迟警告日志,因为我们已经接近正式发布了?

4

我不介意这些警告。

0

限制“-”字符的原因是什么?恕我直言,它在 URL 中很常见,并且适合分隔单词。

1

每个端点都有许多与之关联的配置属性,配置属性应避免-在前缀中使用字符,保留其对属性名称的使用。禁止-在端点 ID 的名称中使用可以防止端点的配置属性出现问题。

7

@wilkinsona:感谢您的解释!