springboot和feign開啟https訪問

使用keytool生成證書

# 創(chuàng)建keystore
keytool -genkey -alias springtest -keyalg RSA -keysize 2048 -keystore server.keystore -storepass 123456
# 從keystore導(dǎo)出證書
keytool -exportcert -keystore server.keystore -alias springtest -storepass 123456 -file springtest.pem
# 將證書導(dǎo)入到truststore
keytool -import -trustcacerts -file springtest.pem -store serverTrust.keystore -storepass 123456

參考
https://blog.csdn.net/Staba/article/details/127999161

一共會生成3個文件腔召,拷貝到resources目錄


springboot配置ssl

# Nacos幫助文檔: https://nacos.io/zh-cn/docs/concepts.html
spring.application.name=demo1
server.port=8081
server.servlet.context-path=/demo1

# Nacos認證信息
spring.cloud.nacos.discovery.server-addr=
spring.cloud.nacos.discovery.username=nacos
spring.cloud.nacos.discovery.password=nacos
spring.cloud.nacos.discovery.namespace=public

spring.cloud.nacos.config.server-addr=
spring.cloud.nacos.config.username=nacos
spring.cloud.nacos.config.password=nacos
spring.cloud.nacos.config.namespace=public

# Nacos 配置中心的namespace链蕊。需要注意,如果使用 public 的 namcespace 橄碾,請不要填寫這個值蒋得,直接留空即可
# spring.cloud.nacos.config.namespace=
# spring.config.import=nacos:nacos-config-example.properties?refresh=true

# ssl
server.ssl.enabled=true
server.ssl.key-store=classpath:server.keystore
server.ssl.key-store-password=123456
server.ssl.key-store-type=JKS
server.ssl.key-alias=springtest
server.ssl.key-password=123456

server.ssl.trust-store=classpath:serverTrust.keystore
server.ssl.trust-store-type=JKS
server.ssl.trust-store-password=123456

common包中添加自動配置類

@Configuration
@ConditionalOnProperty(value = {"server.ssl.trust-store", "server.ssl.trust-store-password"})
public class FeignSSLAutoConfiguration {

    @Value("${server.ssl.trust-store}")
    private String trustStore;

    @Value("${server.ssl.trust-store-password}")
    private String trustStorePass;

    @Bean
    public SSLContext sslContext() throws IOException, CertificateException, NoSuchAlgorithmException, KeyStoreException, KeyManagementException {
        return SSLContextBuilder.create()
                .loadTrustMaterial(ResourceUtils.getFile(trustStore), trustStorePass.toCharArray())
                .build();
    }

    @Bean
    @ConditionalOnClass(LoadBalancerClient.class)
    public Client client(SSLContext sslContext, LoadBalancerClient loadBalancerClient, LoadBalancerClientFactory factory) {
        Client.Default client = new Client.Default(sslContext.getSocketFactory(), NoopHostnameVerifier.INSTANCE);
        return new FeignBlockingLoadBalancerClient(client, loadBalancerClient, factory);
    }


}

maven依賴如下

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
    <groupId>io.github.openfeign</groupId>
    <artifactId>feign-httpclient</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-loadbalancer</artifactId>
</dependency>

spring.factories

# Auto Configure
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
com.yimin.common.autoconfigure.FeignSSLAutoConfiguration

feignClient使用https協(xié)議

@FeignClient(value = "https://demo1")
public interface Demo1Client {

    @PostMapping("/demo1/hello")
    String hello(@RequestBody HelloDto dto);
}

參考
https://blog.csdn.net/qq_32238611/article/details/122738184

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末级及,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子额衙,更是在濱河造成了極大的恐慌饮焦,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,591評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件窍侧,死亡現(xiàn)場離奇詭異县踢,居然都是意外死亡,警方通過查閱死者的電腦和手機伟件,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,448評論 3 392
  • 文/潘曉璐 我一進店門硼啤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人斧账,你說我怎么就攤上這事谴返∩飞觯” “怎么了?”我有些...
    開封第一講書人閱讀 162,823評論 0 353
  • 文/不壞的土叔 我叫張陵嗓袱,是天一觀的道長籍救。 經(jīng)常有香客問我,道長索抓,這世上最難降的妖魔是什么钧忽? 我笑而不...
    開封第一講書人閱讀 58,204評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮逼肯,結(jié)果婚禮上耸黑,老公的妹妹穿的比我還像新娘。我一直安慰自己篮幢,他們只是感情好大刊,可當我...
    茶點故事閱讀 67,228評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著三椿,像睡著了一般缺菌。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上搜锰,一...
    開封第一講書人閱讀 51,190評論 1 299
  • 那天伴郁,我揣著相機與錄音,去河邊找鬼蛋叼。 笑死焊傅,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的狈涮。 我是一名探鬼主播狐胎,決...
    沈念sama閱讀 40,078評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼歌馍!你這毒婦竟也來了握巢?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,923評論 0 274
  • 序言:老撾萬榮一對情侶失蹤松却,失蹤者是張志新(化名)和其女友劉穎暴浦,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體玻褪,經(jīng)...
    沈念sama閱讀 45,334評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡肉渴,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,550評論 2 333
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了带射。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片同规。...
    茶點故事閱讀 39,727評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出券勺,到底是詐尸還是另有隱情绪钥,我是刑警寧澤,帶...
    沈念sama閱讀 35,428評論 5 343
  • 正文 年R本政府宣布关炼,位于F島的核電站程腹,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏儒拂。R本人自食惡果不足惜寸潦,卻給世界環(huán)境...
    茶點故事閱讀 41,022評論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望社痛。 院中可真熱鬧见转,春花似錦、人聲如沸蒜哀。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,672評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽撵儿。三九已至乘客,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間淀歇,已是汗流浹背易核。 一陣腳步聲響...
    開封第一講書人閱讀 32,826評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留浪默,地道東北人耸成。 一個月前我還...
    沈念sama閱讀 47,734評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像浴鸿,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子弦追,可洞房花燭夜當晚...
    茶點故事閱讀 44,619評論 2 354

推薦閱讀更多精彩內(nèi)容