6. 提供替代格式

来自环境 endpoints 的默认 JSON 格式非常适合 Spring applications 使用,因为 maps 直接映射到Environment抽象。如果您愿意,可以通过向资源路径添加后缀(“.yml”,“.yaml”或“.properties”)来使用与 YAML 或 Java properties 相同的数据。对于不关心 JSON endpoints 结构的 applications 或它们提供的额外元数据,这可能很有用,例如,不使用 Spring 的 application 可能会受益于这种方法的简单性。

YAML 和 properties 表示有一个额外的 flag(作为 boolean 查询参数resolvePlaceholders提供),用于表示源文档中的占位符(标准 Spring ${…}形式)应在渲染之前尽可能在输出中解析。对于不了解 Spring 占位符约定的消费者而言,这是一个有用的 feature。

使用 YAML 或 properties 格式存在限制,主要与元数据丢失有关。对于 example,JSON 的结构为 property 源的有序列表,其名称与源相关。即使值的原点具有多个源,并且原始源 files 的名称丢失,YAML 和 properties 表单也会合并为单个 map。 YAML 表示不一定是支持存储库中 YAML 源的忠实表示:它是由平 property 源列表构成的,并且必须对键的形式进行假设。