[java] Java Jersey에서 헤더를 추가하거나 수정하는 방법은?
import javax.ws.rs.client.Client;
import javax.ws.rs.client.ClientBuilder;
import javax.ws.rs.client.Entity;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;

public class JerseyExample {

    public static void main(String[] args) {
        // 클라이언트 생성
        Client client = ClientBuilder.newClient();

        // 요청 헤더 추가
        Response response = client.target("https://api.example.com/resource")
                                 .request()
                                 .header("Authorization", "Bearer token123")
                                 .get();

        // 응답 헤더 확인
        String headerValue = response.getHeaderString("HeaderName");
        System.out.println("Header Value: " + headerValue);

        // 헤더 수정
        response.getHeaders().putSingle("HeaderName", "NewValue");

        // 응답 본문 확인
        String body = response.readEntity(String.class);
        System.out.println("Response body: " + body);

        // 클라이언트 종료
        client.close();
    }
}

위의 예제 코드는 Java Jersey를 사용하여 GET 요청에 헤더를 추가하거나 수정하는 방법을 보여줍니다. Client 객체를 생성하고 target 메서드를 사용하여 요청을 보낼 URL을 설정합니다. request 메서드를 사용하여 Invocation.Builder 객체를 가져온 후, header 메서드를 사용하여 헤더를 추가합니다. get 메서드를 사용하여 실제 요청을 보내고, 응답을 받습니다.

응답 헤더 값을 가져오려면 response.getHeaderString 메서드를 사용합니다. 헤더를 수정하기 위해 response.getHeaders().putSingle 메서드를 사용하여 새 값을 설정합니다. 응답의 본문을 가져오려면 response.readEntity 메서드를 사용합니다.

마지막으로, 작업을 완료한 후에는 client.close 메서드를 사용하여 클라이언트를 종료합니다.

자세한 내용은 Jersey Documentation을 참조하십시오.