시나리오는 다음과 같습니다. 원격 C 시스템에 저장된 엔터티에 대한 캐시 역할을하는 RESTful 웹 서비스를 구현하고 있습니다. 웹 서비스의 요구 사항 중 하나는 원격 C 시스템이 오프라인 일 때 마지막 캐시 된 데이터로 GET 요청에 응답하지만이를 "부실"로 표시한다는 것입니다.부실 데이터를 반환 할 수있는 GET 요청에 사용할 HTTP 상태 코드는 무엇입니까?
데이터가 부실하다고 플래그를 지정하는 방식은 200 (확인) 이외의 HTTP 상태 코드를 반환하는 것입니다. 나는 503 (서비스를 사용할 수 없음)을 사용하는 것을 고려했지만, 일부 C#/Java HTTP 클라이언트가 예외를 던지게하고, 간접적으로 사용자가 제어 흐름에 대한 예외를 사용하도록 강요한다고 생각한다.
더 적절한 상태 코드를 제안 할 수 있습니까? 아니면 200을 반환하고 응답 본문에 staleness 플래그를 추가해야합니까? 또 다른 옵션은 연결 상태를 알려주는 별도의 리소스를 정의하고 클라이언트가 별도로 처리하도록합니다.
모든 대답이 유효하지만, 이는 내 문제에 대해 가장 의미 론적으로 일치하는 것으로 간주됩니다. 감사! – PaoloVictor