前幾天主管問我FreeMarker下,Url如何進行編碼,我當時的想法是 “ 這需要編碼么?”,
的確,在絕大部分情況下,瀏覽器、系統框架能幫我們解決編碼的問題,即使不處理也沒任何問題,所以我思考了這么個應用場景。
Js的話,主要就是encodeURIComponent的使用,他會把路徑中的符號、中文進行編碼,這樣不會與Url中的語法設定沖突
在Java中也有類似的語法,用來解決中文路徑、空格等問題
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
asdad
<a id="test" href="#">asdasd</a>
<script type="text/javascript">
var ur = encodeURIComponent('a=http://www.baidu.com?a=這是一段中文&b=3');
console.log(ur)
document.getElementById('test').setAttribute('href', 'http://localhost:8080/Sea/test?' + ur);
</script>
</body>
</html>
