[java] HttpClient를 사용하여 Request에서 특정 위치에 쿠키 추가하는 방법은?

HttpClient를 사용하여 HTTP 요청을 보낼 때 특정 위치에 쿠키를 추가하고 싶다면 아래와 같은 코드로 처리할 수 있습니다.

import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.protocol.HttpClientContext;
import org.apache.http.impl.client.BasicCookieStore;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClients;
import org.apache.http.protocol.BasicHttpContext;

public class HttpClientExample {

    public static void main(String[] args) throws Exception {
        // HttpClient 인스턴스 생성
        CloseableHttpClient httpClient = HttpClients.createDefault();

        // 쿠키 저장소 생성
        BasicCookieStore cookieStore = new BasicCookieStore();

        // 쿠키 추가
        cookieStore.addCookie(new BasicClientCookie("cookieName", "cookieValue"));

        // HttpClientContext 생성
        HttpClientContext context = HttpClientContext.create();
        context.setCookieStore(cookieStore);

        // GET 요청 생성
        HttpGet httpGet = new HttpGet("https://www.example.com");

        // 요청에 쿠키 추가
        context.setAttribute(HttpClientContext.COOKIE_STORE, cookieStore);

        // 요청 실행
        HttpResponse response = httpClient.execute(httpGet, context);

        // 응답 처리
        // ...

        // HttpClient 종료
        httpClient.close();
    }
}

위의 코드에서 cookieNamecookieValue는 본인이 추가하고자 하는 쿠키의 이름과 값으로 변경해주시면 됩니다.

이렇게 하면 HttpClient를 사용하여 Request에 특정 위치에 쿠키를 추가할 수 있습니다. 추가한 쿠키는 HttpClientContext를 통해 적절한 위치에 저장하여 사용할 수 있습니다.