Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/380.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 从Spring控制器发送重定向_Java_Spring_Spring Mvc - Fatal编程技术网

Java 从Spring控制器发送重定向

Java 从Spring控制器发送重定向,java,spring,spring-mvc,Java,Spring,Spring Mvc,如果返回类型不是URL Handkler方法的字符串,如何从Spring控制器发送重定向 @RequestMapping(value = "/save", method = RequestMethod.POST) @ResponseBody public JsonResponse save(@RequestBody FormBean formBean) { if(condition true) ? Save(formBean) : "redirect:/an

如果返回类型不是URL Handkler方法的字符串,如何从Spring控制器发送重定向

@RequestMapping(value = "/save", method = RequestMethod.POST)
@ResponseBody
public JsonResponse save(@RequestBody FormBean formBean) {  

    if(condition true)
      ? Save(formBean)
      : "redirect:/anotherUrl";

}

JsonResponse是一个返回类型,实际上是一个java类,我如何在这里发送重定向?

您必须从控制器方法返回一个
ResponseEntity
。它有一个
HttpStatus'和可以设置的标题,以及一个作为域对象的主体。要重定向,您通常会将状态设置为
FOUND
(302),并添加一个带有URL的
Location`头,以便客户端重定向。

您可以返回ModelAndView,将视图设置为JSON视图(或任何适当的名称),否则返回“default”视图(我认为它是JspView或类似的东西……看看JavaDoc视图,看看是什么实现了它)为什么要重定向?当需要
JsonResponse
时,重定向不是很合乎逻辑。我没有使用ModelAndView,这就是问题所在。对于所有响应,我都使用JSON response.Brat,我正在实现sychronizer令牌。因此,对于每个请求,我都会检查令牌,如果它匹配,则请求继续,否则将重定向t他将用户转到应用程序的主页。请看。这是处理问题的正确方法。这如何回答问题?这与重定向无关。