提供纯文本配置访问
你的应用程序可能需要根据其环境定制的通用纯文本配置文件,而不是使用Environment
抽象(或YAML或属性格式中的其中一种替代表示)。Config Server通过/{name}/{profile}/{label}/{path}
中的附加端点提供这些,其中name
、profile
和label
与常规环境端点具有相同的含义,但path
是文件名(例如log.xml
)。此端点的源文件的定位方式与环境端点相同,相同的搜索路径用于属性和YAML文件,但是,不是聚合所有匹配的资源,而是仅返回要匹配的第一个。
找到资源后,通过使用提供的应用程序名称、配置文件和标签的有效Environment
来解析正常格式(${…}
)的占位符,通过这种方式,资源端点与环境端点紧密集成,请考虑以下GIT或SVN存储库示例:
application.yml
nginx.conf
其中nginx.conf
看起来像这样:
server {
listen 80;
server_name ${nginx.server.name};
}
application.yml
像这样:
nginx:
server:
name: example.com
---
spring:
profiles: development
nginx:
server:
name: develop.com
/foo/default/master/nginx.conf
资源可能如下:
server {
listen 80;
server_name example.com;
}
/foo/development/master/nginx.conf
是这样的:
server {
listen 80;
server_name develop.com;
}
与环境配置的源文件一样,profile
用于解析文件名,因此,如果你需要特定配置文件,/*/development/*/logback.xml
可以被解析为名为logback-development.xml
的文件(优先于logback.xml)。
如果你不想提供label
并让服务器使用默认标签,则可以提供useDefaultLabel
请求参数,因此,default
配置文件的前面示例可能是/foo/default/nginx.conf?useDefaultLabel
。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。