シナリオは次のとおりです。リモートCシステムに格納されたエンティティのキャッシュとして機能するRESTful Webサービスを実装しています。 Webサービスの要件の1つは、リモートのCシステムがオフラインのときに、最後にキャッシュされたデータでGET要求に応答するが、「失効」とフラグを立てることです。失効したデータを返す可能性のあるGETリクエストに使用するHTTPステータスコードは何ですか?
データが無効であるとフラグを立てる方法は、200(OK)以外のHTTPステータスコードを返すことでした。私は503(サービスは利用できません)を使用することを検討しましたが、C#/ Java HTTPクライアントが例外をスローすることがあり、間接的にユーザーに制御フローの例外を使用させてしまうと考えています。
もっと適切なステータスコードを提案できますか?それともレスポンスボディにstalenessフラグを追加するだけですか?もう1つの選択肢は、接続状態を知らせる別個のリソースを定義し、クライアントがそれを個別に処理させることです。
すべての回答は有効ですが、これは私の問題と最も意味的に関連していると考えられています。ありがとう! – PaoloVictor