400,路径有特殊字符

本地路径可以访问到图片,报400说是路径中有特殊字符,网上查了一些改tomcat配置也试了,不好用,直接上图

img

img

img

filepath 是干啥的? 这个路径 一会儿 斜杠,一会反斜杠?? 改了再试试

img

斜线,冒号都是url的保留字符,不能在URL中出现
建议改成POST请求,将参数放在Body里面
或者是不是可以考虑filePath这种参数,放在配置里面?这种路径一般不前后端传
贴一张URL的保留字段图,你参考

img

  • 这有个类似的问题, 你可以参考下: https://ask.csdn.net/questions/7501094
  • 你也可以参考下这篇文章:Java项目tomcat启动正常,数据报错 ,不存在某种张表,但我看了数据库 这张表是存在的,请大神们指教错误
  • 除此之外, 这篇博客: 记一次压力测试引起的系统响应时间过长、Tomcat服务出现服务连接拒绝问题的排查和调优中的 在行内做并发压力测试(300并发)的时候,我方系统出现了响应时间过长、Tomcat出现服务连接拒绝等问题 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 打开日志,看到本不耗时的代码块偶尔出现了耗时过长,初步分析是并发线程过多导致cpu频繁调度。经过用Jvisualvm和Jconsole进行实时Jvm监控,发现并发时线程数很高,内存使用急增,使用率几乎达百分之百,并且Gc频繁回收,cpu使用情况也急增到百分之七十左右。拉取Gc日志,并写Gc日志分析脚本,发现并发时频繁发生MinorGC。因此加大了项目运行时最大内存,加大了新生代内存,减少了Gc频率。服务连接拒绝是由于连接数超过了Tomcat的最大连接数,在此基础上对Tomcat参数进行了优化。初步调优后,已经不会再出现服务连接拒绝,Gc频繁也有所下降,但是cpu和内存使用率依然很高。使用Jvisualvm的抽样器,查看cpu和内存具体情况,发现有大量logger日志输出对象和转Xml用的Unmarshaller对象,再结合项目代码情况排查,原来是当时开发的时候为了方便排查错误,输出了多个log文件,Unmarshaller对象也没有用单例模式,使得高并发下创建大量对象来不及回收一直占用内存。再次调整之后,内存使用和Gc频繁也正常,cpu使用情况也降到了百分之二十五左右,并发响应时间成功达标了。

    当时也是首次排查和解决这样的问题,看似短短的描述,实却顶住了很大的压力去想出排查和解决方案。对个人来讲是一个成长的过程。希望各位朋友遇到问题都能顺风顺水!