[HTTP] HTTP/1.1 강제 지정 다시 보기

snowballnote·2026년 10월 7일

FMS 목록 조회가 실제 서버에서 멈추는 문제가 있어서 요청 방식을 확인하다가 이 설정을 넣었다.

builder.version(HttpClient.Version.HTTP_1_1);

Java HttpClient는 상황에 따라 HTTP/2 사용을 시도할 수 있다.

이번 FMS 환경에서는 중간의 reverse proxy와 통신할 때 HTTP/2 업그레이드 과정이 문제될 가능성이 있어서 /api/drive/list 요청만 HTTP/1.1로 고정했다.

기존
Java HttpClient
→ HTTP/2 사용 또는 업그레이드 시도 가능

변경
/api/drive/list
→ HTTP/1.1로 요청

중요한 건 HTTP/1.1이 무조건 더 좋다는 뜻은 아니다.

서버나 프록시 환경에 따라 특정 프로토콜에서 문제가 생길 수 있어서 필요한 요청에만 명시적으로 지정한 것.

HttpRequest request = HttpRequest.newBuilder(uri)
        .version(HttpClient.Version.HTTP_1_1)
        .GET()
        .build();

나중에 외부 API가 브라우저에서는 되는데 Java에서 이상하게 멈추면 URL이나 인증뿐 아니라

HTTP 버전
redirect
proxy
timeout

같은 전송 설정도 같이 확인하기.

profile
개발자로 이 험난한 세상 살아가기

0개의 댓글