一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

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

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/

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 我的好妈妈7中字在线观看韩国 | 欧美黑人成人免费全部 | 日本在线亚州精品视频在线 | 99ri在线精品视频在线播放 | 久久精品亚洲热综合一本 | 午夜一级免费视频 | 免费看日本 | 精品91| 操到翻白眼 | 精品人伦一区二区三区潘金莲 | b站免费| 国产欧美精品 | 我不卡影院手机在线观看 | 激情三级做爰在线观看激情 | 99久热只有精品视频免费看 | 国产女乱淫真高清免费视频 | 能免费观看的韩剧 | 明星ai人脸替换造梦在线播放 | 99精品视频免费在线观看 | 全黄一级裸片视频免费 | 四虎成人影院 | 啊用力好大粗黑人小说 | 成人人免费夜夜视频观看 | 亚洲国产精品无码中文字幕 | 天码毛片一区二区三区入口 | 国产日日操| 农村老妇1乱69系列小说 | 人与善交大片免费看 | 成人综合婷婷国产精品久久免费 | 美女扒开尿口让男生添 漫画 | 秋霞理论最新三级理论最 | 秋霞理论一级在线观看手机版 | 日本不卡免免费观看 | 大陆男同志gayxxx | 91欧美国产 | 欧美亚洲一区二区三区在线 | 草草草草视频 | 王淑兰与铁柱全文免费阅读 | 精品在线网站 | www.尤物| 99视频全部免费 |