Я хочу обслуживать статические файлы из моего приложения SpringBoot. У меня есть очень простой контроллер, который я хотел бы выполнить:
@EnableWebMvc
@RestController
public class MyRestController implements WebMvcConfigurer {
@Override
public void addResourceHandlers(ResourceHandlerRegistry registry) {
registry.addResourceHandler("/static/**")
.addResourceLocations("classpath:/static")
.addResourceLocations("file:/static");
}
@PostMapping(path = "/hello")
public MyResponse hello(@RequestBody() MyBody body,
HttpServletRequest request) {
return new MyResponse("Hello " + request.getRemoteAddr());
}
}
Мой файл index.html находится в папке static :
MyApp/
src/
main/
static/index.html
static/img/image.png
Когда ясделать запрос GET с curl на http://localhost:8080, в ответ я получаю код ответа 404 и сервер сообщает No mapping for GET /
. Я ожидаю, что файл index.html возвращается.
Отправка запроса POST на http://localhost:8080/hello
с объектом MyBody
в виде тела json работает!
Что я сделал не так?
Я прочитал это blogpost с сайта Spring, но с тех пор, как этот пост был опубликован в 2013 году, он кажется довольно тихим. Может, сегодня он работает иначе?