logo

Accept 헤더가 포함된 REST API에서 에러를 내려주는 방법!

* 관련 기술 스택이 없습니다
emoji

• 메일 원문 다운로드 API 개발 중 파일 접근에 대한 이슈를 공유하며, 파일 스토리지에 접근하여 파일을 Binary 형태로 가져오는 과정에서 메타 데이터를 모두 가져오면 오버헤드가 발생하므로, 메타 데이터와 파일 정보를 가져오는 End-point를 분리하는 방법을 제안한다.
• REST API에서는 행위에 대한 설명이 URL에 들어가는 것을 지양하고, 헤더를 활용하는 것을 권장하며, 이를 위해 Accept 헤더에 'application/octet-stream'을 넣어 해당 포맷의 데이터로 응답하도록 요청하는 방법을 소개한다.
• 에러 처리 시, 메타 데이터 조회는 잘 처리되지만 파일 데이터 조회의 경우 응답 Payload가 없는 문제가 발생했다. 이는 서버에서 내려주는 Content-Length가 0이기 때문이었다.
• 이 문제를 해결하기 위해 'Accept' 헤더에 'application/problem+json'을 추가하였고, 이를 통해 에러 메시지를 Body에 쓰고 flush할 수 있게 되었다.

thumbnail
북마크
공유하기
신고하기
5분 분량
조회수 171
profile-imageVioletbeach
2년 전
Copyright © 2025. Codenary All Rights Reserved.