我正在编写一个仅由Rest API端点组成的Web应用程序。该应用程序没有提供jsp,也没有任何用Java编写的UI。 (我打算将来在React中编写前端)

在我的控制器中使用ModelAndView是否有意义?我想重定向到另一个URL吗?我看到类似于以下代码的示例代码:

@Controller
@RequestMapping("/")
public class RedirectController {

    @GetMapping("/redirectWithRedirectPrefix")
    public ModelAndView redirectWithUsingRedirectPrefix(ModelMap model) {
        model.addAttribute("attribute", "redirectWithRedirectPrefix");
        return new ModelAndView("redirect:/redirectedUrl", model);
    }
}

最佳答案

如果您的控制器总是要重定向,则只需返回一个字符串,例如

return "redirect:/redirectedUrl";


否则,您可以返回一个响应实体:

final HttpHeaders headers = new HttpHeaders();
headers.add("Location", "/redirectedUrl");
return new ResponseEntity<Foo>(headers, HttpStatus.FOUND);


我认为如果没有视图,则返回ModelAndView是没有意义的。

08-18 00:17
查看更多