js前端传json后台接收‘‘被转为quot的问题解决


Posted in Javascript onNovember 12, 2020

一、产生原因

        前端传json格式数据,后台接收却发现有一堆& quot;,但是如果后台接收参数用@RequestBody注解,则不会出现这个问题,出现这一问题的原因就是后台没有按照json格式去接收参数,按照json接收参数的前提是请求头 参数Content-Type:application/json,如此一来,后台框架才知道如何去处理参数,但有时候遇到的需求无法这么写,例如发送下载请求:
        json格式参数最常见的是发送ajax请求,但是ajax无法触发浏览器下载机制,故不支持下载使用;

        用a标签发下载请求,携带参数有限,适合单个下载请求

        利用form表单拼接参数,提交表单发送请求,但无法发送携带json参数的请求,所以只能把json格式的字符串拼接到输入框,后台用String接收,这样就会出现将引号转译为& quot;这一问题。

二、解决方案

1、方案一

        使用org.apache.commons.lang.StringEscapeUtils这个类下的unescapeHtml()这个方法

@RequestMapping("/downloads")
public ResultVO downloads(String models) {
 String jsonModels = StringEscapeUtils.unescapeHtml(models);
 // 然后再去转为你要的Object
 
 return ResultVO.success();
}

        pom依赖

<dependency>
 <groupId>commons-lang</groupId>
 <artifactId>commons-lang</artifactId>
 <version>2.6</version>
</dependency>

2、方案二

        将所有的"替换回引号

String jsonModels = models.replaceAll(""", "\"");

三、结束

        批量下载已搞定,颇有收获,所以遇到问题还是需要耐心分析,认真记录的,不仅要解决掉问题,还要知根知底。 

        另外感谢这篇文章 https://blog.csdn.net/charset_ok/article/details/80239882

到此这篇关于js前端传json后台接收‘‘被转为"的问题解决的文章就介绍到这了,更多相关json后台接收"内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
实现连缀调用的map方法(prototype)
Aug 05 Javascript
JavaScript Event学习补遗 addEventSimple
Feb 11 Javascript
基于jquery的获取浏览器窗口大小的代码
Mar 28 Javascript
idTabs基于JQuery的根据URL参数选择Tab插件
Apr 11 Javascript
javascript中call和apply方法浅谈
Sep 27 Javascript
jQuery的DOM操作之删除节点示例
Jan 03 Javascript
node.js中的fs.readdirSync方法使用说明
Dec 17 Javascript
Linux下为Node.js程序配置MySQL或Oracle数据库的方法
Mar 19 Javascript
jquery中封装函数传递当前元素的方法示例
May 05 jQuery
Bootstrap滚动监听组件scrollspy.js使用方法详解
Jul 20 Javascript
使用layui监听器监听select下拉框,事件绑定不成功的解决方法
Sep 28 Javascript
Bootstrap table 服务器端分页功能实现方法示例
Jun 01 Javascript
使用Vant完成DatetimePicker 日期的选择器操作
Nov 12 #Javascript
JavaScript 实现拖拽效果组件功能(兼容移动端)
Nov 11 #Javascript
vant 中van-list的用法说明
Nov 11 #Javascript
让Vue响应Map或Set的变化操作
Nov 11 #Javascript
vue项目中使用rem,在入口文件添加内容操作
Nov 11 #Javascript
VUE前端从后台请求过来的数据进行转换数据结构操作
Nov 11 #Javascript
Vue 防止短时间内连续点击后多次触发请求的操作
Nov 11 #Javascript
You might like
php cli 方式 在crotab中运行解决
2010/02/08 PHP
php中用memcached实现页面防刷新功能
2014/08/19 PHP
php程序总是提示验证码输入有误解决方案
2015/01/07 PHP
JS数组的遍历方式for循环与for...in
2014/07/31 Javascript
JavaScript生成SQL查询表单的方法
2015/08/13 Javascript
js动态生成Html元素实现Post操作(createElement)
2015/09/14 Javascript
jQuery中$.each()函数的用法引申实例
2016/05/12 Javascript
js实现tab选项卡切换功能
2017/01/13 Javascript
NodeJS收发GET和POST请求的示例代码
2017/08/25 NodeJs
vue cli使用绝对路径引用图片问题的解决
2017/12/06 Javascript
微信小程序实现左侧滑动导航栏
2020/04/08 Javascript
详解在Vue.js编写更好的v-for循环的6种技巧
2020/04/14 Javascript
简单了解JavaScript arguement原理及作用
2020/05/28 Javascript
vue实现一个6个输入框的验证码输入组件功能的实例代码
2020/06/29 Javascript
[01:06:54]DOTA2-DPC中国联赛 正赛 RNG vs Dragon BO3 第一场 1月24日
2021/03/11 DOTA
python中关于日期时间处理的问答集锦
2013/03/08 Python
Python中条件选择和循环语句使用方法介绍
2013/03/13 Python
python装饰器与递归算法详解
2016/02/18 Python
python 打印出所有的对象/模块的属性(实例代码)
2016/09/11 Python
使用Python多线程爬虫爬取电影天堂资源
2016/09/23 Python
使用numba对Python运算加速的方法
2018/10/15 Python
python爬取微信公众号文章的方法
2019/02/26 Python
对python3 sort sorted 函数的应用详解
2019/06/27 Python
Python实现SMTP邮件发送
2020/06/16 Python
CSS3制作轮播图的一种方法
2019/11/11 HTML / CSS
思想专业自荐信范文
2013/12/25 职场文书
元宵节晚会主持人串词
2014/03/25 职场文书
团支部建设方案
2014/05/02 职场文书
电话客服工作职责
2014/07/27 职场文书
年终工作总结范文2014
2014/11/27 职场文书
2014年后勤管理工作总结
2014/12/01 职场文书
2014七年级班主任工作总结
2014/12/05 职场文书
行政上诉状范文
2015/05/23 职场文书
导游词之唐山景点
2019/12/18 职场文书
【DOTA2】半决赛强强对话~ PSG LGD vs EHOME - DPC 2022 CN REGIONAL FINALS WINTER
2022/04/02 DOTA
MySQL提取JSON字段数据实现查询
2022/04/22 MySQL