Wenn Sie es verwenden, müssen Sie das Protokoll kennen. Seien Sie besonders vorsichtig, wenn das Protokoll für jede Umgebung unterschiedlich ist (Entwicklung, Bereitstellung, Produktion).
TestContoroller.java
public class TestController {
@GetMapping("/show")
public ModelAndView test() {
return new ModelAndView("redirect:" + "/sample");
}
}
Im obigen Fall Es wird zu "http: // localhost / sample". Wenn Sie dies aus application.yml lesen und festlegen möchten
TestContoroller.java
@RequiredArgsConstructor
@EnableConfigurationProperties({RedirectUrlProperties.class})
public class TestController {
private final RedirectUrlProperties redirectUrlProperties;
@GetMapping("/show")
public ModelAndView test() {
return new ModelAndView("redirect:" + buildAdminRedirectUrl("/sample"));
}
/*
*Die Frühlingsumleitung ist standardmäßig http
*Methode zum Erstellen von redirectURL für jede Umgebung
*/
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;
}
Bisher haben wir "Weiterleiten" beschrieben, aber wenn Sie nur die interne Methode anwenden möchten, sollten Sie "Weiterleiten" in Betracht ziehen. Da sich die URL von "Weiterleiten" jedoch nicht ändert, muss überprüft werden, ob sie einschließlich dieses Bereichs geeignet ist. (Umleitung löst die Anforderung erneut aus, verarbeitet sie jedoch intern weiter, sodass die Anforderung nur das erste Mal ist.)
Ich bezog mich auf Folgendes. https://qiita.com/rubytomato@github/items/8d132dec042f695e50f6