HTTP 콘텐츠 협상에서 클라이언트는 Accept 헤더로 처리 가능한 미디어 타입을 보냅니다. 서버는 자원의 표현 중 맞는 형식을 골라 Content-Type으로 응답합니다. 서버가 원하는 형식을 제공할 수 없으면 406을 돌리거나 규칙에 따라 다른 표현을 선택할 수 있습니다.
데모는 같은 자원에 JSON과 텍스트 Accept를 번갈아 보내 응답 모양이 달라지는 모습을 보여줍니다. 캐시를 쓴다면 표현 선택에 영향을 준 요청 헤더를 Vary에 반영해야 서로 다른 표현이 섞이지 않습니다.
언제 쓰나
같은 API 자원을 JSON·텍스트 등 여러 표현으로 제공할 때 씁니다.