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 相关文章推荐
通过Mootools 1.2来操纵HTML DOM元素
Sep 15 Javascript
js 获取计算后的样式写法及注意事项
Feb 25 Javascript
利用js实现选项卡的特别效果的实例
Mar 03 Javascript
js调用css属性写法
Sep 21 Javascript
jQuery中:input选择器用法实例
Jan 03 Javascript
jQuery实现平滑滚动到指定锚点的方法
Mar 20 Javascript
全面解析Bootstrap中tab(选项卡)的使用方法
Jun 06 Javascript
JS表单提交验证、input(type=number) 去三角 刷新验证码
Jun 21 Javascript
Vue使用vue-area-linkage实现地址三级联动效果的示例
Jun 27 Javascript
详解element-ui动态限定的日期范围选择器代码片段
Jul 03 Javascript
vue浏览器返回监听的具体步骤
Feb 03 Vue.js
vue登录页实现使用cookie记住7天密码功能的方法
Feb 18 Vue.js
使用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入门的学习方法
2007/01/02 PHP
在smarty模板中使用PHP函数的方法
2011/04/23 PHP
destoon二次开发模板及调用语法汇总
2014/06/21 PHP
ThinkPHP控制器间实现相互调用的方法
2014/10/31 PHP
PHP implode()函数用法讲解
2019/03/08 PHP
准确获得页面、窗口高度及宽度的JS
2006/11/26 Javascript
用javascript实现页面打印的三种方法
2007/03/05 Javascript
限制文本字节数js代码
2007/03/06 Javascript
记录几个javascript有关的小细节
2007/04/02 Javascript
jQuery中创建实例与原型继承揭秘
2011/12/21 Javascript
JSONP 跨域访问代理API-yahooapis实现代码
2012/12/02 Javascript
jQuery表单获取和失去焦点输入框提示效果的实例代码
2013/08/01 Javascript
JS通过相同的name进行表格求和代码
2013/08/18 Javascript
JavaScript简单表格编辑功能实现方法
2015/04/16 Javascript
javascript三元运算符用法实例
2015/04/16 Javascript
jQuery代码实现对话框右上角菜单带关闭×
2016/05/03 Javascript
Vue进度条progressbar组件功能
2018/04/17 Javascript
详解使用VUE搭建后台管理系统(vue-cli更新至3.0)
2018/08/22 Javascript
Vue封装的可编辑表格插件方法
2018/08/28 Javascript
Vue 表情包输入组件的实现代码
2019/01/21 Javascript
微信小程序rich-text富文本用法实例分析
2019/05/20 Javascript
layui实现多图片上传并限制上传的图片数量
2019/09/26 Javascript
微信小程序select下拉框实现源码
2019/11/08 Javascript
element中Steps步骤条和Tabs标签页关联的解决
2020/12/08 Javascript
Python使用matplotlib实现在坐标系中画一个矩形的方法
2015/05/20 Python
详解python中的json的基本使用方法
2016/12/21 Python
利用Python将文本中的中英文分离方法
2018/10/31 Python
Python搭建Keras CNN模型破解网站验证码的实现
2020/04/07 Python
利用python生成照片墙的示例代码
2020/04/09 Python
Python批量修改xml的坐标值全部转为整数的实例代码
2020/11/26 Python
松本清官方海外旗舰店:日本最大的药妆连锁店
2017/11/21 全球购物
英国Boots旗下太阳镜网站:Boots Designer Sunglasses
2018/07/07 全球购物
写给医生的感谢信
2015/01/22 职场文书
惊涛骇浪观后感
2015/06/05 职场文书
导游词之天下银坑景区
2019/11/21 职场文书
导游词之苏州寒山寺
2019/12/05 职场文书