JS前端传中文到后端乱码处理方法

2,919 阅读1分钟

昨天碰到个问题,这边传参到后端的时候,后端接收时乱码了。于是我...

1.js前端处理:

String   content = encodeURI(encodeURI(params.content));  // 编码两次

2.java后台处理:

 String content=smsSendTemplate.getContent(); // 内置会解码一次
 smsSendTemplate.setContent(URLDecoder.decode(content,"UTF-8")); //再解码一次就ok

3.为什么前端要经过两次编码,而后台只解码一次就够了呢?

因为后台获取前端的中文参数时,内置会优先解码一次。所以我们只需要再解码一次就可以了。