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 相关文章推荐
JavaScript 应用技巧集合[推荐]
Aug 30 Javascript
jQuery中选择器小问题(新人难免遇到)
Mar 31 Javascript
从零学JS之你需要了解的几本书
May 19 Javascript
JavaScript运动框架 链式运动到完美运动(五)
May 18 Javascript
简单的网页广告特效实例
Aug 19 Javascript
浅析Javascript中双等号(==)隐性转换机制
Oct 27 Javascript
JS 使用 window对象的print方法实现分页打印功能
May 16 Javascript
AngularJS ui-router刷新子页面路由的方法
Jul 23 Javascript
微信小程序授权登录及解密unionId出错的方法
Sep 26 Javascript
小程序获取周围IBeacon设备的方法
Oct 31 Javascript
浅谈关于vue中scss公用的解决方案
Dec 02 Javascript
Vue看了就会的8个小技巧
Jan 21 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 巧用数组降低程序的时间复杂度
2010/01/01 PHP
php判断一个数组是否为有序的方法
2015/03/27 PHP
php7函数,声明,返回值等新特性介绍
2018/05/25 PHP
php获取用户真实IP和防刷机制的实例代码
2018/11/28 PHP
提高Laravel应用性能方法详解
2019/06/24 PHP
在TP5数据库中四个字段实现无限分类的示例
2019/10/18 PHP
JavaScript对象创建及继承原理实例解剖
2013/02/28 Javascript
浅析LigerUi开发中谨慎载入common.css文件
2013/07/09 Javascript
Javascript 高阶函数使用介绍
2015/06/15 Javascript
jQuery插件AjaxFileUpload实现ajax文件上传
2016/05/05 Javascript
jquery easyui validatebox remote的使用详解
2016/11/09 Javascript
EditPlus中的正则表达式 实战(2)
2016/12/15 Javascript
jQuery快速高效制作网页交互特效
2017/02/24 Javascript
详谈javascript精度问题与调整
2017/07/08 Javascript
详解如何在vue项目中引入elementUI组件
2018/02/11 Javascript
详解Element-UI中上传的文件前端处理
2019/08/07 Javascript
浅谈Vue3.0之前你必须知道的TypeScript实战技巧
2019/09/11 Javascript
Javascript类型判断相关例题及解析
2020/08/26 Javascript
js实现网页随机验证码
2020/10/19 Javascript
[00:05]ChinaJoy现场 DOTA2玩家高呼“CN DOTA BEST DOTA”
2019/08/04 DOTA
Python升级提示Tkinter模块找不到的解决方法
2014/08/22 Python
浅谈django开发者模式中的autoreload是如何实现的
2017/08/18 Python
python编辑用户登入界面的实现代码
2018/07/16 Python
python中文编码与json中文输出问题详解
2018/08/24 Python
详解关于Django中ORM数据库迁移的配置
2018/10/08 Python
Pycharm新手使用教程(图文详解)
2020/09/17 Python
Django多个app urls配置代码实例
2020/11/26 Python
Alpine安装Python3依赖出现的问题及解决方法
2020/12/25 Python
基于Python实现天天酷跑功能
2021/01/06 Python
乌克兰设计师和品牌的服装:Love&Live
2020/04/14 全球购物
超市营业员求职简历的自我评价
2013/10/17 职场文书
丧事主持词大全
2014/04/02 职场文书
五一口号
2014/06/19 职场文书
党的群众路线教育实践活动个人对照检查材料(公安)
2014/11/05 职场文书
2015年爱牙日活动总结
2015/03/23 职场文书
创建文明城市倡议书
2015/04/28 职场文书