我正在用Spring Boot做一个项目。完成所有API部分并转到前端部分后,我意识到带注释的@RestController
控制器只能返回数据,而不能返回页面名称。我有一个解决方案,可以创建带有@Controller
注释的另一个控制器,并在页面加载时使用Javascript提取API数据。没关系,但这需要我为我的每个实体创建一组URL和控制器,这听起来不必要地浪费时间。
有没有办法从@RestController
一起返回页面名称和JSON数据?就像Django和laravels中一样。
答案 0 :(得分:1)
您可以尝试将控制器数据包装在特定对象中,例如
abstract class AbstractResponse {
String pageName;
}
class MyResponse extends AbstractResponse{
String field1;
String field2;
String field3;
String field4;
}
什么会给你类似json
{
"field1": "",
"field2": "",
"field3": "",
"field4": "",
"pageName": ""
}
或者使用诸如本文中讨论的modelAndView概念 Returning view from Spring MVC @RestController