Web项目中前端页面通过URL传中文或 # 特殊字符到后台出现乱码解决方案

      

      对于刚入行新手来说碰到URL传递中文数据到后台出现乱码或是传递包含特使符号‘#’后端获取不到的情况是比较头疼的事,这里我就告诉你这两个的解决的方式;

       1.URL传递中文

    前端页面:中文字符串用 encodeURI(encodeURI())包裹后加入 URL连接中;
    在页面JSP页面中的URL:

       例:window.location.href = '/cm/configuration_management&compile='+encodeURI(encodeURI(“中文字符 串”)); 

  前端页面接收前端页面传来的中文

      例: var compile = decodeURI(compile);

  后端页面接收前端页面传来的中文

       后端:中文字符串用 URLDecoder.decode(cph,"UTF-8");包裹后加入 ;

       例: String compile = URLDecoder.decode(compile,"UTF-8");//如果页面都是用UTF-8格式编码的话。

2.处理前端页面传递包含带特殊字符‘#’后端获取不到的情况

前端页面:特殊字符‘#’用 encodeURIComponent( “#” )包裹后加入 URL连接中;

  例:window.location.href = '/cm/configuration_management&positionnum='+encodeURIComponent( “#” ); 

后端页面接收前端页面传来的特殊字符‘#’

String  positionnum = new String( positionnum.getBytes("iso8859-1"),"utf-8"); //在controller中接收转换

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_无往而不胜_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值