【JavaWeb】接口请求404的问题排查
响应状态404:404 Page Not Found
根本原因:
服务器找不到这个地址描述的页面资源, 注意是页面资源
可能的出现的开发情况:
1、请求的资源可能真的不存在,是接口,也可以是页面
2、你写了路径,但是资源不存在,或者你写了资源,但是路径不存在
3、你写对了路径也绑定了资源,你请求的路径不对
4、接口响应的是数据,但是定义成页面来响应 【Web接口 没有注解 @ResponseBody】
5、页面文件放在Tomcat的一个安全目录【WEB-INF】中,不允许使用Get请求直接访问和重定向跳转
问题原因:
做接口迁移(其实就是无脑CV)发现这样一个情况
有一个Controller是之前已经有人写过了,迁移的时候我检查了代码内容,发现作者是一样的,代码结构也没发生变化
就不需要我CV过来了,但是跑UAT测试的时候发现整个Controller提供的接口没有一个有效
全部请求都是404。。。
分析情况:
代码合版到测试这块不是我来操作的,在基于自己本地运行没问题的情况下
能推导出的情况就只能是发版的开发没有提交到UAT
证明:
项目的服务是放在Linux服务器里面的,一般情况是为了本地跑不了测试只能去服务器抓日志看BUG才访问的
这个问题也是一样,只能上去看看文件的情况
本地代码拉下来是存在这个文件的
到服务器里面查看文件结构:
可以发现连目录都不存在
解决:
问题确凿,可以直接找到提版人说明情况发个版就好了