激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Spring Cloud Config對特殊字符加密處理的方法詳解

Spring Cloud Config對特殊字符加密處理的方法詳解

2021-04-25 11:28程序猿DD Java教程

這篇文章主要給大家介紹了關于Spring Cloud Config對特殊字符加密處理的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

前言

之前寫過一篇關于配置中心對配置內容加密解密的介紹:《spring cloud構建微服務架構:分布式配置中心(加密解密) 》。在這篇文章中,存在一個問題:當被加密內容包含一些諸如=、+這些特殊字符的時候,使用上篇文章中提到的類似這樣的命令curl localhost:7001/encrypt -d去加密和解密的時候,會發現特殊字符丟失的情況。

比如下面這樣的情況:

?
1
2
3
4
$ curl localhost:7001/encrypt -d ef34+5edo=
a34c76c4ddab706fbcae0848639a8e0ed9d612b0035030542c98997e084a7427
$ curl localhost:7001/decrypt -d a34c76c4ddab706fbcae0848639a8e0ed9d612b0035030542c98997e084a7427
ef34 5edo

可以看到,經過加密解密之后,又一些特殊字符丟失了。由于之前在這里也小坑了一下,所以抽空寫出來分享一下,給遇到同樣問題的朋友,希望對您有幫助。

問題原因與處理方法

其實關于這個問題的原因在官方文檔中是有具體說明的,只能怪自己太過粗心了,具體如下:

if you are testing like this with curl, then use --data-urlencode (instead of -d) or set an explicit content-type: text/plain to make sure curl encodes the data correctly when there are special characters (‘+' is particularly tricky).

所以,在使用curl的時候,正確的姿勢應該是:

?
1
2
3
4
5
$ curl localhost:7001/encrypt -h 'content-type:text/plain' --data-urlencode "ef34+5edo="
335e618a02a0ff3dc1377321885f484fb2c19a499423ee7776755b875997b033
 
$ curl localhost:7001/decrypt -h 'content-type:text/plain' --data-urlencode "335e618a02a0ff3dc1377321885f484fb2c19a499423ee7776755b875997b033"
ef34+5edo=

那么,如果我們自己寫工具來加密解密的時候怎么玩呢?下面舉個okhttp的例子,以供參考:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
private string encrypt(string value) {
  string url = "http://localhost:7001/encrypt";
  request request = new request.builder()
      .url(url)
      .post(requestbody.create(mediatype.parse("text/plain"), value.getbytes()))
      .build();
 
  call call = okhttpclient.newcall(request);
  response response = call.execute();
  responsebody responsebody = response.body();
  return responsebody.string();
}
 
private string decrypt(string value) {
  string url = "http://localhost:7001/decrypt";
  request request = new request.builder()
      .url(url)
      .post(requestbody.create(mediatype.parse("text/plain"), value.getbytes()))
      .build();
 
  call call = okhttpclient.newcall(request);
  response response = call.execute();
  responsebody responsebody = response.body();
  return responsebody.string();
}

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對服務器之家的支持。

原文鏈接:http://blog.didispace.com/spring-cloud-config-sp-char-encrypt/

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 毛片在线免费观看视频 | 国产人成精品综合欧美成人 | 国产一国产一级毛片视频 | 国产免费观看电影网站 | 国产精品视频一区二区三区综合 | 9999精品| 福利免费观看 | 国产一级毛片国语版 | 一级黄色淫片 | 亚洲国产精品99 | 91一区二区在线观看 | 欧美在线观看视频一区 | 亚洲第一页综合 | 亚洲va国产va | 九九热九九热 | 久久久久久久久浪潮精品 | 久久精品视频在线免费观看 | 亚洲一区二区中文字幕在线观看 | 久久久无码精品亚洲日韩按摩 | 黄色毛片a级 | www.国产免费 | 国产美女三级做爰 | 在线免费视频a | 国产自在线| 日本欧美视频 | 成人久久18免费 | 海角在线观看91一区二区 | 久久色亚洲 | 国产精品99久久免费观看 | 亚洲情av | 国产亚洲精品久久久久婷婷瑜伽 | 国产在线精品一区二区不卡 | 欧美日韩在线视频一区 | 日本aaaa片毛片免费观看视频 | xxxⅹ96日本护士hd | 久久精品国产99国产精品亚洲 | 久久久久久久久久久久久久av | av免费在线免费观看 | 日本成人高清视频 | 久久久电影电视剧免费看 | 亚洲国产美女视频 |