前几天主管问我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>
