У меня есть этот способ получить информацию о пользователе. Я знаю, что если я использую действительный URL-адрес (i.e. http://url.to.access)
, мой getuserinfo()
работает.
Есть ли способ использовать имя службы kubernetes для вызова GET-запроса с моим приложение загрузки speing? (i.e. <pod-name>.<namespace>.svc)
userInfoUrl
происходит из property.yaml:
@Value("${auth.userinfoUrl}")
private String userInfoUrl;
Метод получения информации о пользователе:
public ResponseEntity<String> getUserInfo(String accessToken) {
if (!StringUtils.hasText(accessToken)) {
throw new InvalidAccessTokenException("Invalid accessToken.");
}
// Set authorization header with access token
HttpHeaders headers = new HttpHeaders();
headers.set("Authorization", "Bearer " + accessToken);
HttpEntity<String> entity = new HttpEntity<>(headers);
// Does url param tagging based on param given.
UriComponentsBuilder builder =
UriComponentsBuilder.fromHttpUrl(userInfoUrl);
// Call auth server to get user info.
return restTemplate.exchange(builder.toUriString(), HttpMethod.GET, entity, String.class);
}