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

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

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

服務器之家 - 編程語言 - Java教程 - java中URLEncoder.encode與URLDecoder.decode處理url特殊參數的方法

java中URLEncoder.encode與URLDecoder.decode處理url特殊參數的方法

2020-08-31 14:20digdeep Java教程

這篇文章主要給大家介紹了關于java中URLEncoder.encode與URLDecoder.decode處理url特殊參數的方法,文中介紹的非常詳細,需要的朋友可以參考借鑒,下面來一起看看吧。

最近在使用 url 的 queryString 傳遞參數時,因為參數的值,被DES加密了,而加密得到的是 Base64的編碼字符串

類似于:

?
1
za4T8MHB/6mhmYgXB7IntyyOUL7Cl++0jv5rFxAIFVji8GDrcf+k8g==

顯然 這里面含有了 特殊字符: / + = 等等,如果直接通過url 來傳遞該參數:

java" id="highlighter_240262">
?
1
url = "xxxxx?param=" + "za4T8MHB/6mhmYgXB7IntyyOUL7Cl++0jv5rFxAIFVji8GDrcf+k8g==";

那么在服務端獲得 param 會變成類似于下面的值:

?
1
"za4T8MHB/6mhmYgXB7IntyyOUL7Cl 0jv5rFxAIFVji8GDrcf k8g=="

我們看到 三個 + 號消失了。

其原因就是:如果url參數值含有特殊字符時,需要使用 url 編碼。

?
1
url = "xxxxx?param=" + URLEncoder.encode("xxx", "utf-8");

然后服務端獲取時:

?
1
String param = URLDecoder.decode(param, "utf-8");

這樣才能獲得正確的值: "za4T8MHB/6mhmYgXB7IntyyOUL7Cl++0jv5rFxAIFVji8GDrcf+k8g=="

其實 js 中也有類似功能的函數:

參見:js中編碼函數:escape,encodeURI,encodeURIComponent

注意事項:

URLEncoder should be the way to go. You only need to keep in mind to encode only the individual query string parameter name and/or value, not the entire URL, for sure not the query string parameter separator character & nor the parameter name-value separator character =

?
1
2
String q = "random word 攏500 bank $";
String url = "http://example.com/query?q=" + URLEncoder.encode(q, "UTF-8");

URLEncoder 必須 僅僅 編碼 參數 或者參數的值,不能編碼整個 url,也不能一起對 param=value 進行編碼。而是應該: param=URLEncode(value, "utf-8")

或者 URLEncode(param, "utf-8")=URLEncode(value, "utf-8")

因為 url 中的 & 和 = 他們是作為參數之間 以及 參數和值之間的分隔符的。如果一起編碼了,就無法區分他們了。

進一步參考文檔:

https://www.talisman.org/~erlkonig/misc/lunatech%5Ewhat-every-webdev-must-know-about-url-encoding/

總結

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

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 青草青草久热精品视频在线网站 | 日本欧美大码a在线视频播放 | 亚洲欧美日韩一区成人 | 国产资源站 | 放荡护士玩3p口述 | 精品国产自在在线在线观看 | 成年人视频免费在线播放 | www.国产一区二区三区 | 亚洲精品第二页 | 亚洲免费高清视频 | 亚洲AV无码专区国产乱码网站 | 性xxxx直播放免费 | 欧美艳星kagneyiynn高清 | 亚洲精品一区在线观看 | 亚洲网站大全 | 国产裸舞在线一区二区 | 亚洲激情视频在线 | 9久热这里只有精品免费 | 2021小妲己永久回家地址 | 国产欧美日韩一区二区三区在线 | 91精品国产高清久久久久 | 亚洲精品一二三四区 | 无码天堂亚洲国产AV久久 | 国产午夜精品不卡视频 | 日一日操一操 | 欧美xxx000喷水| np小说h| 二次元美女内裤凹陷太深 | 调教全程肉动画片在线观看 | 精品日韩一区二区三区 | 国产79av| 2022国产麻豆剧果冻传媒入口 | 日韩网站在线 | 青青国产在线视频 | fuqer日本| 男同互操 | 日本视频在线免费看 | 国产视频久久久久 | 78成人网| 国色天香社区在线视频免费观看 | 免费人成在线观看69式小视频 |