url对中文编码 ie浏览器中请求报错

12 篇文章 0 订阅

 ie浏览器不会对url里进行编解码处理 如果url参数带中文客户端和服务器编码不一致就会出现乱码 导致请求400错误

/**
	 * 对url中文进行编码
	 * @throws UnsupportedEncodingException 
	 */
	public static String encode(String url) throws UnsupportedEncodingException {
			Matcher matcher = Pattern.compile("[\\u4e00-\\u9fa5]").matcher(url);
			int count = 0;
			while (matcher.find()) {
				String tmp = matcher.group();
				url = url.replaceAll(tmp, URLEncoder.encode(tmp, DEFAULT_URL_ENCODING));
			}
		return url;
	}

jeesite 中分页参数带中文 ie点击400错误

/**
* 构造分页导航的URL,包含查询参数 用于点击“下一页”时,能带参数进行查询

* @param request
*/
private void buildPageURL(HttpServletRequest request) {
String sPageURLPara = buildParameter(request);
if (sPageURLPara.length() > 0) {
try {
pageURL = "?" + Encodes.encode(sPageURLPara.substring(1)) + "&";
} catch (UnsupportedEncodingException e) {
logger.debug(e.toString());
}
} else {
pageURL = "?";
}
pageURL = request.getRequestURI() + pageURL + "pageNo=";


}

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值