最近在朋友遇到一个比较诧异的异常问题,tomcat启动时报Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986错误,具体日志信息如下图所示:

分析原因:

导致上述问题是因为tomcat自tomcat 8.0.35版本之后对URL参数做了比较规范的限制,必须遵循RFC 7230 and RFC 3986规范,对于非保留字字符(json格式的请求参数)必须做转义操作,否则会抛出Invalid character found in the request target. The valid characters are defined in RFC 7230 and RFC 3986错误信息。

解决办法有很多方式,具体如下几种:

1. 遵循7230 and RFC 3986规范,对于非保留字字符做转义操作

2. 使用保留字字符

3. 降低tomcat版本

4. 将json数据进行urlencode编码

个人建议从目前的角度出发使用第三种方式降低tomcat版本就可以了,如果从长远出发的话,建议遵循RFC 7230 and RFC 3986规范,对于非保留字字符(json格式的请求参数)做转义操作。感觉本文对自己有所帮助,欢迎在本站素文宅博客blog.yoodb.com留言。

java环境安装1359错误_解决The valid characters are defined in RFC 7230 and RFC 3986错误问题...相关推荐

  1. 解决The valid characters are defined in RFC 7230 and RFC 3986错误问题

    分析原因: 导致上述问题是因为tomcat自tomcat 8.0.35版本之后对URL参数做了比较规范的限制,必须遵循RFC 7230 and RFC 3986规范,对于非保留字字符(json格式的请 ...

  2. java异常-绝对解决! The valid characters are defined in RFC 7230 and RFC 3986

    原因:页面上 get请求的url里有异常参数,或者有json的大括号啥的,或者有中文啥的,解析不了. 建议用方法2: 方法1: var mapStr = escape(传json型的变量); 然后把  ...

  3. 解决The valid characters are defined in RFC 7230 and RFC 3986

    解决方法: 一.更换低版本的Tomcat:(我选的方案) 二.参考:https://blog.csdn.net/qq_32365919/article/details/82055800

  4. 安装TIA博途V14 SP1后,打开软件时系统提示出现一个并行的错误_解决办法

    安装TIA博途V14 SP1后,打开软件时系统提示出现一个并行的错误_解决办法 如下图所示,已经将 TIA Portal 从 V14 升级到 V14 SP1.成功完成升级而没有任何错误后,再次打开 T ...

  5. 我的世界java环境_《我的世界》JAVA环境安装相关解答及教程

    <我的世界>玩家在安装游戏时,时常需要安装对应的运行环境.下面小编带来<我的世界>JAVA环境安装相关解答及教程,一起来看吧. 我的世界必须安装JAVA环境吗? 这个答案是肯定 ...

  6. linux学 java_[操作系统]Linux学习第二步(Java环境安装)

    [操作系统]Linux学习第二步(Java环境安装) 0 2017-05-19 00:02:21 jdk版本:jdk-8u131-linux-x64.rpm 注:以下操作在root用户或具有root权 ...

  7. Linux java集成安装环境,Linux下Java环境安装

    本节主要讲解Linux(Centos 6.5)下Java环境的安装 1. 卸载机器上默认安装的JDK 在Linux环境下一般会默认安装jdk,为了自己项目的开发部署,一般情况要重新装jdk,而且自己装 ...

  8. 【2022软件创新实验室暑假集训】Java环境安装与基础介绍

    Java环境安装与基础介绍 文章目录 文章目录 Java环境安装与基础介绍 文章目录 Java 简介 主要特性 关于语言学习的选择 Python Java Go&Rust Java环境配置 J ...

  9. linux aarch64 java环境安装(图文详细版)

    文章目录 前言 一.java环境 1.确认服务器版本 2.把包传到服务器上,然后进行解压 3.修改文件名 4.配置环境变量 5.查看java环境 前言 安装过程很简单,请认真确认版本号及服务,直接进入 ...

最新文章

  1. 温度转换的python程序_Python通过小实例入门学习---1.0(温度转换)
  2. php分区表,分区表的基本操作
  3. amd一点也不yes_A粉的狂欢,AMD显卡也翻身了,3A平台不再是笑话了,AMD YES!
  4. Windows Azure 社区新闻综述(#70 版)
  5. 【oracle】关于处理小数点位数的几个oracle函数
  6. JavaScript的语音识别
  7. 精度,精确率,召回率_了解并记住精度和召回率
  8. 怎样判断网页是静态还是伪静态呢
  9. 15-[JavaScript]-ECMAScript 1
  10. DictionaryTKey,TValue
  11. php sphinx 查询,php-Sphinx RT索引和SphinxQL查询
  12. elk 安装与所遇问题
  13. oracle awr报告生成_5.性能测试 - Oracle体系结构和性能优化简介
  14. svn客户端(Windows版本)
  15. 【每天一个 Linux 命令】ssh 命令
  16. TortoiseSVN安装及使用总结
  17. 彻底解决win10黑屏,睡眠后无法唤醒(Intel平台)
  18. AD19-DRC检查
  19. 华邦存储芯片 W25Q 系列命名规则
  20. proceed with launch?解决办法

热门文章

  1. 发布NGuestBook(一个基于.NET平台的分层架构留言本小系统)
  2. STL源码剖析-map
  3. leetcode同样的代码 网上结果和本地结果不一样_Leetcode #263
  4. android studio 便携式wlan热点 网络名称_速存 | WLAN信号增强器
  5. python与tkinter_python与tkinter编程
  6. oracle 10g安装企业版,企业版Oracle10g的安装-过程
  7. php gd support not found.,安装php71w-gd并获取错误GD库扩展不适用于此PHP安装
  8. ieee5节点系统图_存储系统的的关键技术之自精简技术
  9. Python中str.format()字典及list传入详解
  10. 判断一个整数是否是回文数