springboot版本: 2.1.5 最近使用springboot搭建了一个App后台服务的项目,开发接口的时候在本机使用postman工具做请求测试,请求返回一直很正常,但是在前端开发使用h5请求后台服务的时候,前台请求400,浏览器提示请求跨域 但是我在提供接口请求的入口处做了跨域处理的,如图: 所以我考虑可能不是跨域问题,查看ide控制台发现每次请求都会报如下错误: java.lang.IllegalArgumentException: Invalid character found i…
请求: http://127.0.0.1:8080/driverApp/findLikeAddress?json={"shopname":"广东省","uid":1001} 控制台报错: 04-Aug-2020 12:03:09.642 信息 [http-nio-8080-exec-8] org.apache.coyote.http11.Http11Processor.service 解析 HTTP 请求 header 错误 Note: furt…
报错如下: 在请求目标中发现无效字符.有效字符在RFC 7230和RFC 3986中定义. 原因是Tomcat在 7.0.73, 8.0.39, 8.5.7 版本后,添加了对于http头的验证. 就是添加了些规则去限制HTTP头的规范性 解决方法如下: @Bean public ConfigurableServletWebServerFactory webServerFactory() { TomcatServletWebServerFactory factory = new TomcatSer…
通过这里的回答,我们可以知道: Tomcat在 7.0.73, 8.0.39, 8.5.7 版本后,添加了对于http头的验证. 具体来说,就是添加了些规则去限制HTTP头的规范性 参考这里 具体来说: org.apache.tomcat.util.http.parser.HttpParser#IS_NOT_REQUEST_TARGET[]中定义了一堆not request target if(IS_CONTROL[i] || i > 127 || i == 32 || i == 34 || i…
通过这里的回答,我们可以知道: Tomcat在 7.0.73, 8.0.39, 8.5.7 版本后,添加了对于http头的验证. 具体来说,就是添加了些规则去限制HTTP头的规范性 参考这里 具体来说: org.apache.tomcat.util.http.parser.HttpParser#IS_NOT_REQUEST_TARGET[]中定义了一堆not request target if(IS_CONTROL[i] || i > 127 || i == 32 || i == 34 || i…
目录 背景 原因分析 处理方法 参考 背景 在将tomcat升级到7.0.81版后,发现系统的有些功能不能使用了,查询日志发现是有些地址直接被tomcat认为存在不合法字符,返回HTTP 400错误响应,错入信息如下: 原因分析 经了解,这个问题是高版本tomcat中的新特性:就是严格按照 RFC 3986规范进行访问解析,而 RFC 3986规范定义了Url中只允许包含英文字母(a-zA-Z).数字(0-9).-_.~4个特殊字符以及所有保留字符(RFC3986中指定了以下字符为保留字符:!…
背景 在将tomcat升级到7.0.81版后,发现系统的有些功能不能使用了,查询日志发现是有些地址直接被tomcat认为存在不合法字符,返回HTTP 400错误响应,错入信息如下: 原因分析 经了解,这个问题是高版本tomcat中的新特性:就是严格按照 RFC 3986规范进行访问解析,而 RFC 3986规范定义了Url中只允许包含英文字母(a-zA-Z).数字(0-9).-_.~4个特殊字符以及所有保留字符(RFC3986中指定了以下字符为保留字符:! * ' ( ) ; : @ & = +…
MyEclipse 启动tomcat 报错: java.lang.IllegalArgumentException: Invalid 'log4jConfigLocation' parameter: class path resource [log4j.properties] cannot be resolved to URL because it does not exist 解决办法: 1. 右键项目--properties- Java Build Path --Libraries 中加入…
报错出现 java.lang.IllegalArgumentException: Control character in cookie value or attribute. at org.apache.tomcat.util.http.CookieSupport.isHttpSeparator(CookieSupport.java:205) at org.apache.tomcat.util.http.CookieSupport.isHttpToken(CookieSupport.java:…
今天在写智能机器人问答实现的时候遇到了一个问题,就是我发送消息不能输入空格 给我报了一个错误java.lang.IllegalArgumentException: Illegal character in query at index说是我输入的数据有问题,在这里说明因为在我们使用的是get方式传输数据,它会在url后面跟上你所带的参数,所以就存在url的组成数据问题url转换问题解决办法 你只需要在你的Url后面加上下面的语句就行了 String url = baseUrl + "?"…