Back-End/Spring

[Spring] 서버에서 다른 서버의 Rest API 요청 및 응답 받기

HMHA 2023. 2. 9. 14:01
300x250
반응형

스프링 서버단에서 다른 서버에 request를 보내야 하는 경우 두 가지 방법을 이용 가능. !

 

1. RestTemplate을 이용한다.

private static void getEmployees()
{
    final String uri = "http://localhost:8080/springrestexample/employees.xml";

    RestTemplate restTemplate = new RestTemplate();
    String result = restTemplate.getForObject(uri, String.class);

    System.out.println(result);
}

 

 

2. WebClient를 이용한다. (스프링 5버전 이상에서 지원하는 방식)

@Bean
public WebClient localApiClient() {
    return WebClient.create("http://localhost:8080/api/v3");
}
@Service
public class UserService {

    private static final Duration REQUEST_TIMEOUT = Duration.ofSeconds(3);

    private final WebClient localApiClient;

    @Autowired
    public UserService(WebClient localApiClient) {
        this.localApiClient = localApiClient;
    }

    public User getUser(long id) {
        return localApiClient
                .get()
                .uri("/users/" + id)
                .retrieve()
                .bodyToMono(User.class)
                .block(REQUEST_TIMEOUT);
    }

}

 

 

출처 : https://bmangrok.tistory.com/entry/Spring-%EC%84%9C%EB%B2%84%EC%97%90%EC%84%9C-%EB%8B%A4%EB%A5%B8-%EC%84%9C%EB%B2%84%EC%9D%98-Rest-API-%EC%9A%94%EC%B2%AD-%EB%B0%8F-%EC%9D%91%EB%8B%B5-%EB%B0%9B%EA%B8%B0

 

[Spring] 서버에서 다른 서버의 Rest API 요청 및 응답 받기

스프링 서버단에서 다른 서버에 request를 보내야 하는 경우 두 가지 방법을 이용 가능. ! 1. RestTemplate을 이용한다. private static void getEmployees() { final String uri = "http://localhost:8080/springrestexample/employees.

bmangrok.tistory.com

 

300x250
반응형