Java WEB 之页面间传递特殊字符

本文是学习网络上的文章时的总结以及自己的一点实践。感谢大家无私的分享。

昨天在做项目的时候,有一个页面间传递特殊字符的需求,查了一些资料。如今将自己的经验写出来。

首先。在前台编码

var fckPurpose=encodeURIComponent($.trim(jQuery("#fckPurpose").val()));

encodeURIComponent、encodeURI和escape三个函数区别在于个别字符是否编码的问题。

參考:

escape()、encodeURI()、encodeURIComponent()差别具体解释


然后在再后台(java)对字符做处理,由于Java中有一些字符有特殊含义

fckPurpose = fckPurpose.replaceAll("%", "%25");
			fckPurpose = fckPurpose.replaceAll("\+", "%2B");
			fckPurpose = fckPurpose.replaceAll("/", "%2F");
			fckPurpose = fckPurpose.replaceAll("\?", "%3F");
			fckPurpose = fckPurpose.replaceAll("#", "%23");
			fckPurpose = fckPurpose.replaceAll("&", "%26");

特殊字符在前台的转换码,參见:URL 中“+”加号的问题

这样基本能够了

原文地址:https://www.cnblogs.com/tlnshuju/p/7263845.html