若依微服务框架,富文本加入图片保存时出现JSON parse error: Unexpected character (‘/‘ (code 47)):...

若依微服务框架,富文本加入图片保存时出现JSON parse error: Unexpected character

  • 一、问题
  • 二、解决
    • 1.修改网关配置
    • 2、对数据进行加密解密
      • 2.1安装插件
      • 2.2vue页面加密使用
      • 2.3后台解密存储

一、问题

若依微服务项目在使用富文本框的时候,富文本加入图片进行保存的时候会出现以下错误

JSON parse error: Unexpected character (‘/’ (code 47)): maybe a (non-standard) comment? (not recognized as one since Feature ‘ALLOW_COMMENTS’ not enabled for parser); nested exception is com.fasterxml.jackson.core.JsonParseException: Unexpected character (‘/’ (code 47)): maybe a (non-standard) comment? (not recognized as one since Feature ‘ALLOW_COMMENTS’ not enabled for parser) at [Source: (org.springframework.util.StreamUtils$NonClosingInputStream); line: 1, column: 152]

针对这个问题,目前有两种解决方案

二、解决

1.修改网关配置

若依官方问题解决:https://doc.ruoyi.vip/ruoyi-cloud/other/faq.html#特殊字符串被过滤的解决办法

若依的微服务使用了nacos
1.打开nacos,找到ruoyi-gateway-dev.yml配置文件,
2.然后找到security.xss.excludeUrls然后再后面加入调用的接口,进行排除
方法直接了当,不过不怎么安全,因为这本来就是防止xss攻击的,这里给接口放开了
在这里插入图片描述

2、对数据进行加密解密

vue对上传的富文本数据进行加密操作,后台进行解密操作(使用中)

2.1安装插件

因为若依后台带有best64工具类,前端这里直接安装

npm install --save js-base64

2.2vue页面加密使用

// 加密
Base64.encode(data);
// 解密
Base64.decode(data);

2.3后台解密存储

若依Base64工具类在safety-common-core模块下
Ruoyi-Cloud\ruoyi-common\ruoyi-common-core\src\main\java\com\ruoyi\common\core\utils\sign

我这里只把富文本数据进行加密了,后台解密如下

// str 解密后的数据
// data 前台传来的加密数据
String str = new String(Base64.decode(data));

这样就直接完成了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/339311.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

IDEA(十)2022版本 Services中服务窗口不显示端口号解决

目录 一、问题描述二、问题分析三、解决方案3.1 设置启动参数【生效】3.2 方法二:设置环境变量【不生效】3.3 方法三:删除缓存【不生效】 四、补充:如何手动控制端口显示 一、问题描述 我们在使用 IDEA 的过程中,会发现在 Servic…

详解C语言中`||`的短路机制

在C语言中,逻辑或运算符(||)是一种常用的逻辑运算符,用于组合多个条件表达式。与其他编程语言一样,C语言中的逻辑或运算符具有短路机制,这是一种非常重要的概念,本文将深入解释C语言中的||短路机…

如何在ubuntu22.04安装ROS2

ubuntu22.04安装ROS2 教程 选择对应版本进行安装设置编码添加源安装ROS2设置环境变量 运行ROS2 选择对应版本 通过官方网站,查询Ubuntu与ros对应的版本,版本不一致也会出现安装不成功。 https://wiki.ros.org/ROS/Installation 每一个都可以进行点击&a…

使用Dockerfile来构建服务的镜像,并部署在容器中

构建服务镜像和容器化部署 一、构建服务镜像1、编写Dockerfile2、构建脚本3、启动脚本 二、问题及解决办法1、no main manifest attribute, in /chatgpt-api-1.0-SNAPSHOT.jar2、如果是SpringBoot项目,应该这么做: 一、构建服务镜像 1、编写Dockerfile …

接口测试 03 -- 接口自动化思维 Requests库应用

1. 接口自动化思维梳理 1.1接口自动化的优点 接口测试自动化,简单来讲就是功能测试用例脚本化然后执行脚本,产生一份可视化测试报告。不管什么样的测试方式,都是为了验证功能与发现 BUG。那为什么要做接口测试自动化呢?一句话概括…

城市道路智慧养护顶层设计建议书

项目通过对国家在推动智慧交通领域的健康发展上发布的如:《交通强国建设纲要》、《推进综合交通运输大数据发展行动纲要(2020-2025年)》、《数字交通发展规划纲要》等相关政策的深入理解与研究,结合“互联网”、“智能化”、“智慧化”等理念,对国家提出…

Mybatis 动态SQL(set)

我们先用XML的方式实现 : 把 id 为 13 的那一行的 username 改为 ip 创建一个接口 UserInfo2Mapper ,然后在接口中声明该方法 package com.example.mybatisdemo.mapper; import com.example.mybatisdemo.model.UserInfo; import org.apache.ibatis.annotations.*; import jav…

GD32接收不定长数据包

接收不定长数据 Cubemx生成代码过程忽略 首先在main函数中创建接收缓存区 并在main.h中定义 接下来就是重写串口的中断函数中的内容,把原有内容注释掉 main中创建一个记录接收数据长度的变量和标志位 然后再在主函数中添加一个验证代码,这样MCU收到数据…

QT第六天

要求&#xff1a;使用QT绘图&#xff0c;完成仪表盘绘制&#xff0c;如下图。 素材 运行效果&#xff1a; 代码&#xff1a; widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include <QPainter> #include <QPen>QT_BEGIN_NAMESPACE name…

嵌入式软件工程师面试题——2025校招社招通用(计算机网络篇)(三十二)

说明&#xff1a; 面试群&#xff0c;群号&#xff1a; 228447240面试题来源于网络书籍&#xff0c;公司题目以及博主原创或修改&#xff08;题目大部分来源于各种公司&#xff09;&#xff1b;文中很多题目&#xff0c;或许大家直接编译器写完&#xff0c;1分钟就出结果了。但…

HTML Grid 另一种布局方法

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>网格布局测试</title><link rel"styl…

动手做个无人机—材料篇

基于浙江大学Fast-Lab(高飞&#xff0c;潘能)和深蓝学院合作课程&#xff1a;第二课&#xff1a;动力套焊接_哔哩哔哩_bilibili 无人机材料1&#xff1a; 1、NUC 猛虎峡谷 准系统 i5薄款&#xff1a; 一款机载电脑&#xff0c;使用i5-1135G7 &#xff0c;最大内存64G&#xff…

从 fatal 错误到 sync.Map:Go中 Map 的并发策略

为什么 Go 语言在多个 goroutine 同时访问和修改同一个 map 时&#xff0c;会报出 fatal 错误而不是 panic&#xff1f;我们该如何应对 map 的数据竞争问题呢&#xff1f; 这篇文章将带你一步步了解背后的原理&#xff0c;并引出解决 map 并发问题的方案。 Map 数据竞争 首先…

C语言的编译和链接

每日一言 要保持希望在每天清晨太阳升起。 --自己 前言 当我们写下C语言代码&#xff08;源文件、以.c为后缀&#xff09;的时候&#xff0c;他需要经过一个翻译环境&#xff0c;被处理后形成一个可执行程序&#xff08;以.exe为后缀&#xff09;。形成的这个可执行程序里面放…

PLC-IoT 网关开发札记(5):将本地数据库作为资产打包发布到 App

App需求&#xff1a;保存物模型 什么是物模型 在项目开发中&#xff0c;用到了本地数据库&#xff0c;这个本地数据库记录了系统的物模型。所谓物模型就是对某一个设备的可操纵属性的定义&#xff0c;每一个设备包括了一个或者多个属性&#xff0c;通过获取这些属性的当前值可…

基于CanvasLabel的Leaflet矢量数据免切片属性标注实践

目录 前言 一、Leaflet.CanvasLabel 1、开源地址 2、设置参数说明 二、组件集成 1、新建html文件 2、声明样式 3、定义矢量文本渲染器 4、定义地图 5、添加矢量数据 6、最终效果 总结 前言 在一般的业务场景中&#xff0c;针对小量的矢量数据&#xff0c;比如POI兴…

Opncv模板匹配 单模板匹配 多模板匹配

目录 问题引入 单模板匹配 ①模板匹配函数: ②查找最值和极值的坐标和值: 整体流程原理介绍 实例代码介绍: 多模板匹配 ①定义阈值 ②zip函数 整体流程原理介绍 实例代码: 问题引入 下面有请我们的陶大郎登场 这张图片是我们的陶大郎,我们接下来将利用陶大郎来介绍…

Eclipses安装教程

一、下载开发工具包 1、开发工具包JDK 下载地址链接&#xff1a;https://www.oracle.com/cn/java/technologies/downloads/ 下载教程&#xff1a; 1&#xff09;点击链接&#xff0c;可以跳转到页面 2&#xff09;下滑页面&#xff0c;找到开发工具包 3&#xff09; 记住下载之…

Linux shell编程学习笔记41:lsblk命令

边缘计算的挑战和机遇 边缘计算面临着数据安全与隐私保护、网络稳定性等挑战&#xff0c;但同时也带来了更强的实时性和本地处理能力&#xff0c;为企业降低了成本和压力&#xff0c;提高了数据处理效率。因此&#xff0c;边缘计算既带来了挑战也带来了机遇&#xff0c;需要我…

关于js的BigInt的使用与注意事项

说明 BigInt是一种内置对象&#xff0c;提供了一种方法来表示大于2^53 - 1 的整数&#xff0c;2^53 - 1 为Number可以表示的最大数字&#xff0c;BigInt可以突破限制&#xff0c;可以用任意精度表示整数&#xff0c;超出Number的安全整数限制&#xff0c;也可以安全地存储和操…