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 相关文章推荐
浅析hasOwnProperty方法的应用
Nov 20 Javascript
JavaScript利用正则表达式去除日期中的-
Jun 09 Javascript
javascript实现动态表头及表列的展现方法
Jul 14 Javascript
详解网站中图片日常使用以及优化手法
Jan 09 Javascript
JS实现侧边栏鼠标经过弹出框+缓冲效果
Mar 29 Javascript
详解基于webpack搭建react运行环境
Jun 01 Javascript
详解在Vue中有条件地使用CSS类
Sep 30 Javascript
JavaScript基础心法 数据类型
Mar 05 Javascript
jQuery扩展方法实现Form表单与Json互相转换的实例代码
Sep 05 jQuery
详解如何在vue项目中使用layui框架及采坑
May 05 Javascript
JS数组push、unshift、pop、shift方法的实现与使用方法示例
Apr 29 Javascript
详解vite+ts快速搭建vue3项目以及介绍相关特性
Feb 25 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
全国FM电台频率大全 - 22 重庆市
2020/03/11 无线电
php 字符串压缩方法比较示例
2014/01/23 PHP
php使用数组填充下拉列表框的方法
2015/03/31 PHP
什么是PHP文件?如何打开PHP文件?
2017/06/27 PHP
JS 密码强度验证(兼容IE,火狐,谷歌)
2010/03/15 Javascript
javascript简单实现图片预加载
2014/12/03 Javascript
jQuery创建DOM元素实例解析
2015/01/19 Javascript
jQuery实现自定义事件的方法
2015/04/17 Javascript
JavaScript通过事件代理高亮显示表格行的方法
2015/05/27 Javascript
javascript跑马灯抽奖实例讲解
2020/04/17 Javascript
基于javascript实现全屏漂浮广告
2016/03/31 Javascript
仿百度换肤功能的简单实例代码
2016/07/11 Javascript
Nodejs中使用phantom将html转为pdf或图片格式的方法
2017/09/18 NodeJs
Vue父组件调用子组件事件方法
2018/02/23 Javascript
Vue2 添加数据可视化支持的方法步骤
2019/01/02 Javascript
详解基于React.js和Node.js的SSR实现方案
2019/03/21 Javascript
微信小程序API—获取定位的详解
2019/04/30 Javascript
微信小程序修改数组长度的问题的解决
2019/12/17 Javascript
react组件基本用法示例小结
2020/04/27 Javascript
详解element-ui动态限定的日期范围选择器代码片段
2020/07/03 Javascript
JavaScript实现商品评价五星好评
2020/11/30 Javascript
python利用Guetzli批量压缩图片
2017/03/23 Python
Python实现快速计算词频功能示例
2018/06/25 Python
用Python分析3天破10亿的《我不是药神》到底神在哪?
2018/07/12 Python
python 拼接文件路径的方法
2018/10/23 Python
python获取微信小程序手机号并绑定遇到的坑
2018/11/19 Python
python中对数据进行各种排序的方法
2019/07/02 Python
Python缓存技术实现过程详解
2019/09/25 Python
Django1.11自带分页器paginator的使用方法
2019/10/31 Python
Python SSL证书验证问题解决方案
2020/01/13 Python
Django 解决开发自定义抛出异常的问题
2020/05/21 Python
PyCharm中如何直接使用Anaconda已安装的库
2020/05/28 Python
俄罗斯最大的在线珠宝大卖场:Nebo
2019/12/08 全球购物
房地产广告策划方案
2014/05/15 职场文书
党员电教片《信仰》心得体会
2016/01/15 职场文书
tomcat默认最大连接数及相关调整方法
2022/05/06 Servers