我的 Spring 控制器是 public @ResponseBody Map<String, String> 但我也想处理重定向

My Spring Controller is public @ResponseBody Map<String, String> but I also want to handle redirections

我正在从 Ajax 调用一个方法,我正在响应

@ResponseBody Map<String, String>

我的功能没问题!但我的问题是当用户未登录并直接通过 url 调用此方法时。在这种情况下,我不希望我的控制器用

回答

@ResponseBody Map<String, String>

我希望我的控制器通过重定向到登录页面来回答。

我正在使用

public ModelAndView

在其他情况下可以完成这个状态,但我不知道如何处理这种情况。

正如大家提到的,Spring security is essential for this functionality。但如果它是一个快速解决方法,您可以查看 Spring boot AOP

您在控制器处理请求之前拦截控制器调用,并进行身份验证并相应地更改输出