http
.Lors de son utilisation, il est nécessaire de connaître le protocole. Soyez particulièrement prudent si le protocole est différent pour chaque environnement (développement, mise en scène, production).
TestContoroller.java
public class TestController {
@GetMapping("/show")
public ModelAndView test() {
return new ModelAndView("redirect:" + "/sample");
}
}
Dans le cas ci-dessus
Il devient http: // localhost / sample
.
Si vous souhaitez lire ceci depuis application.yml et le définir
TestContoroller.java
@RequiredArgsConstructor
@EnableConfigurationProperties({RedirectUrlProperties.class})
public class TestController {
private final RedirectUrlProperties redirectUrlProperties;
@GetMapping("/show")
public ModelAndView test() {
return new ModelAndView("redirect:" + buildAdminRedirectUrl("/sample"));
}
/*
*la redirection de printemps est http par défaut
*Méthode de création de redirectURL pour chaque environnement
*/
public String buildAdminRedirectUrl(String url) {
return UriComponentsBuilder.fromUriString(redirectUrlProperties.getUrl() + url).toUriString();
}
}
application.yml
spring:
redirect:
url: https://localhost
RedirectUrlProperties.java
@Getter
@Setter
@ConfigurationProperties(prefix= "spring.redirect")
public class RedirectUrlProperties {
private String url;
}
Jusqu'à présent, nous avons décrit redirect
, mais si vous voulez simplement utiliser une méthode interne, pensez à utiliser forward
.
Cependant, comme l'URL de «forward» ne change pas, il est nécessaire de vérifier si elle convient en incluant cette zone.
(la redirection renvoie à nouveau la demande, mais la transmission la traite en interne, donc la demande n'est que la première fois)
J'ai évoqué ce qui suit. https://qiita.com/rubytomato@github/items/8d132dec042f695e50f6
Recommended Posts