如何将 ModelAndView Spring MVC 转换为 spring Webflux
How to convert ModelAndView Spring MVC to spring Webflux
如何将以下 Spring MVC 代码转换为 spring webflux?
@GetMapping(path = "/connect")
@ResponseStatus(HttpStatus.FOUND)
public ModelAndView connect() {
String oauthUrl = "https://google.com";
RedirectView redirect = new RedirectView(oauthUrl);
redirect.setExpandUriTemplateVariables(false);
return new ModelAndView(redirect);
}
您可以使用 Rendering。
@Controller
@RequestMapping("/redirect")
public class RedirectController {
@GetMapping
public Mono<Rendering> redirect() {
return Mono.just(Rendering.redirectTo("https://www.google.com").build());
}
}
@RestController
public class TestController {
@GetMapping(path = "/redirect")
public Mono<ResponseEntity> redirect() {
return Mono.just(ResponseEntity
.status(HttpStatus.TEMPORARY_REDIRECT)
.header("Location", "https://google.com?param=ABCD")
.build());
}
}
或者.header(...)
可以替换为.location(new URI(...))
如何将以下 Spring MVC 代码转换为 spring webflux?
@GetMapping(path = "/connect")
@ResponseStatus(HttpStatus.FOUND)
public ModelAndView connect() {
String oauthUrl = "https://google.com";
RedirectView redirect = new RedirectView(oauthUrl);
redirect.setExpandUriTemplateVariables(false);
return new ModelAndView(redirect);
}
您可以使用 Rendering。
@Controller
@RequestMapping("/redirect")
public class RedirectController {
@GetMapping
public Mono<Rendering> redirect() {
return Mono.just(Rendering.redirectTo("https://www.google.com").build());
}
}
@RestController
public class TestController {
@GetMapping(path = "/redirect")
public Mono<ResponseEntity> redirect() {
return Mono.just(ResponseEntity
.status(HttpStatus.TEMPORARY_REDIRECT)
.header("Location", "https://google.com?param=ABCD")
.build());
}
}
或者.header(...)
可以替换为.location(new URI(...))