api接口404

时间:2025-04-14 07:11:55

问题描述

api接口一直报404,查看接口地址确认接口地址无误。

原因

  • 通过打断点,发现接口在方法#getHandler时,拿到的是ResourceHttpRequestHandler。接口成了获取静态资源的地址,由于没有该路径的静态资源,所以接口一直报404。
  • 通过链路发现,没有找到对应controller层的接口。
  • 原因是对应的Controller没有被spring容器管理。原因如下:
  1. 对应的Controller没有在启动类所以包路径下,导致没扫描到。
  2. 启动类上虽然加了注解@ComponentScan,但是对应的Controller也不在该扫描的包路径下

解决

可以通过下面两种方法解决:

  1. @ComponentScan注解中添加Controller所在的包路径
  2. 将Controller 放到启动类所在的包路径下,这个才能注入Spring 容器中