spring-cloud-config-server는 몇 가지 REST API를 사용할 수있게하여 속성 파일을 직접 쿼리 할 수있게합니다.
$ hostname:port/{label}/{name}-{profiles}.properties]
기존의 git 레이블과 일치하는 한 원하는 벨 application.properties
를 검색하는 예를 들어
는 자식에 v1
레이블 :
$ http://${hostname}:${port}/v1/application.properties
구성 서버의 REST API :
- /{이름}/{프로파일}/{라벨 :. *
- /{label}/{name}-{profiles}.properties
- /{name}-{profiles}.json
- /{label}/{name}-{profiles}.json
- /{label}/{name}-{profiles}.yml
- /{라벨}/{이름} - {프로파일}. YAML
- /{name}-{profiles}.yml
- /{name}-{profiles}.yaml
- /{이름}/{프로파일 :. [^ -].}
- /{name}-{profiles}.properties
- /{이름}/{프로필}/{라벨}/**
는 내가 함께 샘플 spring-cloud-server
프로젝트를 시도 자식에 대한 속성 파일.
라벨 V1 :
http://localhost:8888/v1/application-remote.properties
> testproperty: remotevalue-v1
라벨 V2 :
http://localhost:8888/v2/application-remote.properties
> testproperty: remotevalue-v2
I는 (I 프로필
remote
사용) 각 레이블 파일에 다른 값으로 자식 태그를
v1
및
v2
인가
레이블 없음 :
http://localhost:8888/application-remote.properties
> testproperty: remotevalue-master
자바 코드
나는 그것을 시도하지 않은,하지만 난 당신이 또한 주입 컨트롤러를 호출하는 대신 직접 HTTP 요청을하고 클라우드 설정 서버의 자바 API를 (사용할 수있는 가정) :
@Autowired
EnvironmentController environmentController;
...
Environment labelled = environmentController.labelled("application", "remote", "v1");
Map<?, ?> keyValues = labelled.getPropertySources().get(0).getSource();