SpringCloud(第 035 篇)配置服務(wù)客戶端ConfigClient鏈接經(jīng)過認(rèn)證的配置服務(wù)端
一憎夷、大致介紹
1铜秆、前面一章節(jié)講解了服務(wù)端配置安全認(rèn)證闷煤,那么本章節(jié)就講解如何鏈接上服務(wù)端的認(rèn)證人断;
2披泪、這里還順便列舉下配置路徑的規(guī)則:
/****************************************************************************************
* 配置服務(wù)的路勁規(guī)則:
*
* /{application}/{profile}[/{label}]
* /{application}-{profile}.yml
* /{label}/{application}-{profile}.yml
* /{application}-{profile}.properties
* /{label}/{application}-{profile}.properties
****************************************************************************************/
二蜗侈、實現(xiàn)步驟
2.1 添加 maven 引用包
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>springms-config-client-authc</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>jar</packaging>
<parent>
<groupId>com.springms.cloud</groupId>
<artifactId>springms-spring-cloud</artifactId>
<version>1.0-SNAPSHOT</version>
</parent>
<dependencies>
<!-- 客戶端配置模塊 -->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-config</artifactId>
</dependency>
<!-- web模塊 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
</dependencies>
</project>
2.2 添加應(yīng)用配置文件(springms-config-client-authc\src\main\resources\application.yml)
server:
port: 8280
2.3 添加 bootstrap.yml 應(yīng)用配置文件(springms-config-client-authc\src\main\resources\bootstrap.yml)
#####################################################################################################
# 測試二:配置服務(wù)客戶端Client應(yīng)用入口(鏈接 ClientServer 測試篷牌,username、password 屬性字段的優(yōu)先級高于 uri 的優(yōu)先級)
spring:
cloud:
config:
uri: http://localhost:8275 # 鏈接 springms-config-server-authc 微服務(wù)
username: admin
password: admin
profile: dev # 選擇 dev 配置文件
label: master #當(dāng) ConfigServer 的后端存儲的是 Git 的時候踏幻,默認(rèn)就是 master
application:
name: foobar #取 foobar-dev.yml 這個文件的 application 名字枷颊,即為 foobar 名稱
#####################################################################################################
2.4 添加Web控制層類(springms-config-client-authc/src/main/java/com/springms/cloud/controller/ConfigClientAuthcController.java)
package com.springms.cloud.controller;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* 配置客戶端Controller。
*
* @author hmilyylimh
*
* @version 0.0.1
*
* @date 17/10/18
*
*/
@RestController
public class ConfigClientAuthcController {
@Value("${profile}")
private String profile;
@GetMapping("/profile")
public String getProfile(){
return this.profile;
}
}
2.4 添加應(yīng)用啟動類(springms-config-client-authc/src/main/java/com/springms/cloud/MsConfigClientAuthcApplication.java)
package com.springms.cloud;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
/**
* 配置服務(wù)客戶端ConfigClient鏈接經(jīng)過認(rèn)證的配置服務(wù)端该面。<br/>
*
* @author hmilyylimh
*
* @version 0.0.1
*
* @date 17/10/18
*
*/
@SpringBootApplication
public class MsConfigClientAuthcApplication {
public static void main(String[] args) {
SpringApplication.run(MsConfigClientAuthcApplication.class, args);
System.out.println("【【【【【【 ConfigClientAuthc微服務(wù) 】】】】】】已啟動.");
}
}
三夭苗、測試
/****************************************************************************************
一、配置服務(wù)客戶端Client應(yīng)用入口(鏈接經(jīng)過認(rèn)證的配置服務(wù)端):
1隔缀、注解:pom.xml 先添加 configclient 的引用模题造;
2、編輯 bootstrap.yml 文件猾瘸,注意注釋 profile 屬性界赔,然后添加相關(guān)客戶端配置;
spring:
cloud:
config:
uri: http://admin:admin@localhost:8275 # 鏈接 springms-config-server-authc 微服務(wù)
profile: dev # 選擇 dev 配置文件
label: master #當(dāng) ConfigServer 的后端存儲的是 Git 的時候牵触,默認(rèn)就是 master
application:
name: foobar #取 foobar-dev.yml 這個文件的 application 名字淮悼,即為 foobar 名稱
3、啟動 springms-config-server-authc 模塊服務(wù)揽思,啟動1個端口袜腥;
4、啟動 springms-config-client-authc 模塊服務(wù)钉汗,啟動1個端口羹令;
5、在瀏覽器輸入地址 http://localhost:8280/profile 正常情況下會輸出配置文件的內(nèi)容(內(nèi)容為:foobar-dev)损痰;
總結(jié):正常打印特恬,說明配置服務(wù)客戶端已經(jīng)通過帳號、密碼登錄了遠(yuǎn)程的配置服務(wù)端成功了徐钠;
****************************************************************************************/
/****************************************************************************************
二、配置服務(wù)客戶端Client應(yīng)用入口(鏈接經(jīng)過認(rèn)證的配置服務(wù)端, username役首、password 屬性字段的優(yōu)先級高于 uri 的優(yōu)先級):
1尝丐、注解:pom.xml 先添加 configclient 的引用模显拜;
2、編輯 bootstrap.yml 文件爹袁,注意注釋 profile 屬性远荠,然后添加相關(guān)客戶端配置;
spring:
cloud:
config:
uri: http://localhost:8275 # 鏈接 springms-config-server-authc 微服務(wù)
username: admin
password: admin
profile: dev # 選擇 dev 配置文件
label: master #當(dāng) ConfigServer 的后端存儲的是 Git 的時候失息,默認(rèn)就是 master
application:
name: foobar #取 foobar-dev.yml 這個文件的 application 名字譬淳,即為 foobar 名稱
3、啟動 springms-config-server-authc 模塊服務(wù)盹兢,啟動1個端口邻梆;
4、啟動 springms-config-client-authc 模塊服務(wù)绎秒,啟動1個端口浦妄;
5、在瀏覽器輸入地址 http://localhost:8280/profile 正常情況下會輸出配置文件的內(nèi)容(內(nèi)容為:foobar-dev)见芹;
總結(jié):正常打印剂娄,說明配置服務(wù)客戶端已經(jīng)通過帳號、密碼登錄了遠(yuǎn)程的配置服務(wù)端成功了玄呛;
****************************************************************************************/
四阅懦、下載地址
https://gitee.com/ylimhhmily/SpringCloudTutorial.git
SpringCloudTutorial交流QQ群: 235322432
SpringCloudTutorial交流微信群: 微信溝通群二維碼圖片鏈接
歡迎關(guān)注,您的肯定是對我最大的支持!!!