我一直在研究一个获取汽车数据(licensePlate和品牌)的Spring Boot应用程序,并将其保存到数据库中。到目前为止,它正在工作,但我希望在表单提交后重定向到一侧,而不是重定向,它只打印出它应该去的链接。
这是我的控制器:
@RequestMapping(value = "/savecar", method = RequestMethod.POST)
public @ResponseBody String saveCar(@RequestParam("licensePlate") String licensePlate, @RequestParam("brand") String brand, HttpServletRequest request) {
Car car = new Car(licensePlate, brand);
carRepository.save(car);
String referer = request.getHeader("Referer");
return "redirect:" + referer;
}
我得到的是:
redirect:http://localhost:1333/cars
在我的浏览器窗口中。 我错过了什么?谢谢!如果您需要更多细节,请询问。
答案 0 :(得分:1)
正如@lzagkaretos所说,你需要删除@ResponseBody注释。你得到一个字符串而不是包含@ResponseBody的重定向的原因是因为通过将@ResponseBody与@Controller注释结合起来,你实际上得到了@RestController,并且任何返回的值都将是JSON格式(produce = MediaType.APPLICATION_JSON_VALUE) )或您选择作为返回值的任何其他格式。