유연한 응답 구조 설계와 사용자 경험 개선을 위한 프로필 관리 기능 구현

서비스의 확장성과 유지보수성을 높이기 위해 공통 응답 객체를 개선하고, 사용자가 직접 자신의 정체성을 표현할 수 있는 프로필 이미지 관리 기능을 구현했습니다. 이 과정에서 겪은 기술적 해결 방안을 공유합니다.

공통 응답 객체의 제네릭 타입 추론 개선

기존의 ResponseDto는 롬복의 @Builder를 통해 생성되었습니다. 하지만 제네릭 타입을 사용하는 구조상, 빌더 사용 시 명시적인 타입 지정이 없으면 컴파일러가 타입을 정확히 추론하지 못하는 문제가 발생했습니다. 이를 해결하기 위해 정적 팩토리 메서드 패턴을 도입했습니다. ResponseDto.ok()와 같은 명확한 이름을 가진 메서드를 제공함으로써 가독성을 높였고, 내부적으로 타입을 캡슐화하여 사용하는 측에서의 코드 중복과 실수를 방지했습니다.

보안을 고려한 프로필 이미지 업로드 구현

사용자 프로필 이미지 업로드 기능은 클라이언트의 비동기 요청과 서버의 보안 정책이 맞물리는 지점입니다. 특히 스프링 시큐리티 환경에서 REST API를 호출할 때 발생하는 CSRF 토큰 누락 문제를 해결하기 위해, 메타 태그를 활용한 토큰 전달 방식을 적용했습니다. 또한 Cloudflare R2 스토리지와의 연동을 통해 이미지 데이터를 안정적으로 보관하며, 운영 환경별 프로파일 설정을 분리하여 인프라 관리의 유연성을 확보했습니다.

링크:
링크: » 일본어로 보기 (日本語で見る)
링크: » 영어로 보기 (Switch to English)
공유: