文章目录

  • 1. 复现问题
  • 2. 分析问题
  • 3. 解决问题
  • 4. 问题总结

1. 复现问题

今天在启动spring boot项目报出如下错误:

Exception: Illegal unquoted character ((CTRL-CHAR, code 13)): has to be escaped using backslash to be included in string valueat [Source: (String)""{""properties"" : { },""id"" : ""34da7f2ba4ec41dba7acd0533018d3e7"",""script"" : null,""groupId"" : ""d0fe7c6e314c4572aeae38b7cea6ea50"",""name"" : ""更新定时任务"",""createTime"" : 1645515608643,""updateTime"" : 1645515608643,""lock"" : ""0"",""method"" : ""POST"",""path"" : ""/updateTimerTask"",""parameters"" : [ ],""option"" : ""[]"",""requestBody"" : ""{\r\n\t\r\n}"",""headers"" : [ ],""paths"" : [ ],""responseBody"" : null,""des"[truncated 119 chars]; line: 1, column: 4]at com.fasterxml.jackson.core.JsonParser._constructError(JsonParser.java:2391) ~[jackson-core-2.13.1.jar:2.13.1]at com.fasterxml.jackson.core.base.ParserMinimalBase._reportError(ParserMinimalBase.java:735) ~[jackson-core-2.13.1.jar:2.13.1]at com.fasterxml.jackson.core.base.ParserBase._throwUnquotedSpace(ParserBase.java:1110) ~[jackson-core-2.13.1.jar:2.13.1]at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._finishString2(ReaderBasedJsonParser.java:2155) ~[jackson-core-2.13.1.jar:2.13.1]at com.fasterxml.jackson.core.json.ReaderBasedJsonParser._finishString(ReaderBasedJsonParser.java:2126) ~[jackson-core-2.13.1.jar:2.13.1]at com.fasterxml.jackson.core.json.ReaderBasedJsonParser.getValueAsString(ReaderBasedJsonParser.java:363) ~[jackson-core-2.13.1.jar:2.13.1]at com.fasterxml.jackson.databind.deser.std.StdDeserializer._deserializeFromString(StdDeserializer.java:262) ~[jackson-databind-2.13.1.jar:2.13.1]at com.fasterxml.jackson.databind.deser.BeanDeserializerBase.deserializeFromString(BeanDeserializerBase.java:1495) ~[jackson-databind-2.13.1.jar:2.13.1]at com.fasterxml.jackson.databind.deser.BeanDeserializer._deserializeOther(BeanDeserializer.java:196) ~[jackson-databind-2.13.1.jar:2.13.1]at com.fasterxml.jackson.databind.deser.BeanDeserializer.deserialize(BeanDeserializer.java:186) ~[jackson-databind-2.13.1.jar:2.13.1]at com.fasterxml.jackson.databind.deser.DefaultDeserializationContext.readRootValue(DefaultDeserializationContext.java:322) ~[jackson-databind-2.13.1.jar:2.13.1]at com.fasterxml.jackson.databind.ObjectMapper._readMapAndClose(ObjectMapper.java:4674) ~[jackson-databind-2.13.1.jar:2.13.1]at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3629) ~[jackson-databind-2.13.1.jar:2.13.1]at com.fasterxml.jackson.databind.ObjectMapper.readValue(ObjectMapper.java:3597) ~[jackson-databind-2.13.1.jar:2.13.1]at org.ssssssss.magicapi.utils.JsonUtils.readValue(JsonUtils.java:75) ~[magic-api-2.0.1.jar:2.0.1]at org.ssssssss.magicapi.core.service.MagicResourceStorage.read(MagicResourceStorage.java:51) [magic-api-2.0.1.jar:2.0.1]at org.ssssssss.magicapi.core.service.MagicResourceStorage.readResource(MagicResourceStorage.java:68) [magic-api-2.0.1.jar:2.0.1]at org.ssssssss.magicapi.core.service.impl.DefaultMagicResourceService.lambda$null$102(DefaultMagicResourceService.java:214) [magic-api-2.0.1.jar:2.0.1]at java.util.ArrayList.forEach(ArrayList.java:1249) ~[na:1.8.0_102]at org.ssssssss.magicapi.core.service.impl.DefaultMagicResourceService.lambda$refreshGroup$103(DefaultMagicResourceService.java:214) [magic-api-2.0.1.jar:2.0.1]at java.util.ArrayList.forEach(ArrayList.java:1249) ~[na:1.8.0_102]at org.ssssssss.magicapi.core.service.impl.DefaultMagicResourceService.refreshGroup(DefaultMagicResourceService.java:210) [magic-api-2.0.1.jar:2.0.1]at org.ssssssss.magicapi.core.service.impl.DefaultMagicResourceService.lambda$null$99(DefaultMagicResourceService.java:191) [magic-api-2.0.1.jar:2.0.1]at java.util.HashMap.forEach(HashMap.java:1288) ~[na:1.8.0_102]at org.ssssssss.magicapi.core.service.impl.DefaultMagicResourceService.lambda$readAll$100(DefaultMagicResourceService.java:191) [magic-api-2.0.1.jar:2.0.1]at org.ssssssss.magicapi.core.service.impl.DefaultMagicResourceService.writeLock(DefaultMagicResourceService.java:892) [magic-api-2.0.1.jar:2.0.1]at org.ssssssss.magicapi.core.service.impl.DefaultMagicResourceService.readAll(DefaultMagicResourceService.java:188) [magic-api-2.0.1.jar:2.0.1]at org.ssssssss.magicapi.core.service.impl.DefaultMagicResourceService.lambda$read$98(DefaultMagicResourceService.java:178) [magic-api-2.0.1.jar:2.0.1]at org.ssssssss.magicapi.core.service.impl.DefaultMagicResourceService.writeLock(DefaultMagicResourceService.java:892) [magic-api-2.0.1.jar:2.0.1]at org.ssssssss.magicapi.core.service.impl.DefaultMagicResourceService.read(DefaultMagicResourceService.java:174) [magic-api-2.0.1.jar:2.0.1]at org.ssssssss.magicapi.core.service.impl.DefaultMagicResourceService.onApplicationEvent(DefaultMagicResourceService.java:901) [magic-api-2.0.1.jar:2.0.1]at org.ssssssss.magicapi.core.service.impl.DefaultMagicResourceService.onApplicationEvent(DefaultMagicResourceService.java:37) [magic-api-2.0.1.jar:2.0.1]at org.springframework.context.event.SimpleApplicationEventMulticaster.doInvokeListener(SimpleApplicationEventMulticaster.java:176) ~[spring-context-5.3.14.jar:5.3.14]at org.springframework.context.event.SimpleApplicationEventMulticaster.invokeListener(SimpleApplicationEventMulticaster.java:169) ~[spring-context-5.3.14.jar:5.3.14]at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:143) ~[spring-context-5.3.14.jar:5.3.14]at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:421) ~[spring-context-5.3.14.jar:5.3.14]at org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:378) ~[spring-context-5.3.14.jar:5.3.14]at org.springframework.boot.context.event.EventPublishingRunListener.started(EventPublishingRunListener.java:108) ~[spring-boot-2.6.2.jar:2.6.2]at org.springframework.boot.SpringApplicationRunListeners.lambda$started$5(SpringApplicationRunListeners.java:78) ~[spring-boot-2.6.2.jar:2.6.2]at java.util.ArrayList.forEach(ArrayList.java:1249) ~[na:1.8.0_102]at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:120) ~[spring-boot-2.6.2.jar:2.6.2]at org.springframework.boot.SpringApplicationRunListeners.doWithListeners(SpringApplicationRunListeners.java:114) ~[spring-boot-2.6.2.jar:2.6.2]at org.springframework.boot.SpringApplicationRunListeners.started(SpringApplicationRunListeners.java:78) ~[spring-boot-2.6.2.jar:2.6.2]at org.springframework.boot.SpringApplication.run(SpringApplication.java:308) ~[spring-boot-2.6.2.jar:2.6.2]at org.springframework.boot.SpringApplication.run(SpringApplication.java:1301) ~[spring-boot-2.6.2.jar:2.6.2]at org.springframework.boot.SpringApplication.run(SpringApplication.java:1290) ~[spring-boot-2.6.2.jar:2.6.2]at com.jqp.admin.JqpAdminApplication.main(JqpAdminApplication.java:22) ~[classes/:na]

2. 分析问题

首先解释 Illegal unquoted character ((CTRL-CHAR, code 13)): has to be escaped using backslash to be included in string value这句话的含义是什么,即非法的无引号字符((CTRL-CHAR,代码 13)):必须使用反斜杠进行转义才能包含在字符串值中

也就是说上述json数据出现了非法字符,需要将非法字符进行转义。

分析上述json部分数据看到,确实出现了非法字符,如下所示:

{""properties"" : { },""id"" : ""34da7f2ba4ec41dba7acd0533018d3e7"",""script"" : null
}

使用在线json格式化查看如下图所示:

从图中也可以看到,出现了非法字符。

3. 解决问题

既然出现了非法字符串,要么删除非法的字符,要么使用\进行转义。

  1. 删除非法字符
{"properties": {},"id": "34da7f2ba4ec41dba7acd0533018d3e7","script": null
}

  1. 使用\转义
{"\"properties\"": {},"\"id\"": "\"34da7f2ba4ec41dba7acd0533018d3e7\"","\"script\"": null
}

4. 问题总结

报出Illegal unquoted character ((CTRL-CHAR, code 13)): has to be escaped using backslash to be included in string value这个问题的原因就是字符串中出现了非法字符,我们一般采用如下两种方式解决

  1. 删除非法字符串。

  2. 使用转义字符\将非法字符转义。

解决Illegal unquoted character ((CTRL-CHAR, code 13)): has to be escaped using backslash to be include相关推荐

  1. BUG(10) : Illegal unquoted character ((CTRL-CHAR, code 13)): has to be escaped using backslash to be

    参考 : https://www.jianshu.com/p/a9a81bb6587f https://annan211.iteye.com/blog/2249146 com.fasterxml.ja ...

  2. Illegal unquoted character ((CTRL-CHAR, code 13)): has to be escaped using backs

    Illegal unquoted character ((CTRL-CHAR, code 13)): has to be escaped using backslash to be included ...

  3. Illegal unquoted character ((CTRL-CHAR, code 9)): has to be escaped using backslash to be included i

    Illegal unquoted character ((CTRL-CHAR, code 9)): has to be escaped using backslash to be included i ...

  4. Illegal unquoted character ((CTRL-CHAR, code 10)): has to be escaped using backflash to be included

    2020-10-24 json传html代码时报错:Illegal unquoted character ((CTRL-CHAR, code 10)): has to be escaped using ...

  5. Illegal unquoted character ((CTRL-CHAR, code 10)): has to be escaped using backslash to be included

    filebeat解析stack信息,其中包含换行符,在logstash使用json转换时候报错: Illegal unquoted character ((CTRL-CHAR, code 10)): ...

  6. illegal unquoted character

    异常:illegal unquoted character((CTRL-CHAR,code 10)):has to be escaped using backslash to be included ...

  7. 【Kafka】Illegal unquoted character ((CTRL-CHAR, code 0)): has to be escaped using backs

    1.背景 参考:[Kafka]kafka反序列化数据报错jackson2 JsonParseException: Invalid UTF-8 middle byte 0xc0 我是都统一成UTF-8的 ...

  8. ios计算机错误,解决都叫兽™iOS密码重置与USB连接相关的错误(iOS,Error Code 13)...

    吴川 华南区技术负责人 概要 都叫兽™iOS密码重置可有效帮助您解决忘记密码.设备启动崩溃等问题.本文将针对在Windows系统下使用该软件遇到的"Unstable USB connecti ...

  9. mongoose 通过账号密码连接 Error: Password contains an illegal unescaped character

    mongoose 远程连接,我的密码有乱七八糟的字符,报错Error: Password contains an illegal unescaped character 报错的 mongodb: 'm ...

最新文章

  1. Android菜鸟成长记4-button点击事件
  2. 洛谷P1873 砍树
  3. 发布可伸缩超网SCARLET,小米AutoML团队NAS三部曲杀青
  4. 你不出去卖我拿什么养你_玉树枝干“胳膊粗”,至少养了20年,给钱也不卖!...
  5. 自定义filter中配置不被过滤的资源
  6. Vue使用Vditor编辑器
  7. java 计时 timeclock_用 java 写一个clock的类,100毫秒的时钟 求代码。。越简单越好。。最好有注释...
  8. 通话话单分析 java,奇兵手机话单分析系统功能简介
  9. Python制作GUI小软件,VIP电影输入链接就能看。
  10. 小程序:uniapp开发和原生开发语法区别
  11. 2022-2027年中国酒店及酒店管理市场竞争态势及行业投资前景预测报告
  12. 如何设置Parallels Desktop,让Windows更加好用
  13. Ubuntu20.04下运行LOAM系列:A-LOAM、LeGO-LOAM、LIO-SAM 和 LVI-SAM
  14. 各个厂商手机不打印log日志的解决方法
  15. Transform 3.1 用户手册(SPSS 的通用数据转换程序)
  16. sqlmap总出现missing a mandatory option的解决方法
  17. 杰奇1.7用php53,杰奇CMS 1.7商业版注入漏洞
  18. 看漫画学Python
  19. 2021华东师范大学计算机专硕考研经验贴
  20. Mac 版 Vysor 1.8.2破解 以及下载

热门文章

  1. 深入理解JVM03--判断对象是否存活(引用计数算法、可达性分析算法,最终判定),Eclipse设置GC日志输出,引用
  2. “损失函数”是如何设计出来的?直观理解“最小二乘法”和“极大似然估计法”
  3. stata实现经济生态的空间杜宾模型
  4. 华东理工《文献检索》MOOC (3)---精通web of science检索结果分析、JCR数据库检索
  5. chmod +x 与chmod 777 的超详细解说
  6. 微信小程序实现watch监听,无需页面引入!!!
  7. 查找java最耗费CPU线程的命令
  8. OpenCv 在Win7台式机上的摄像头无法拍照
  9. 2022-2028年中国素食行业竞争策略研究及未来前景展望报告
  10. which java 找不到jdk_一、查看Jdk的安装路径:whereis javawhich java (java执行路径)echo $JAVA_HOMEecho $PATH备注:如...