私たちはJSON-API標準を使用してAPIを開発しています。JSON API:リソースなしのSuccesメッセージ
ユースケースは以下の通りです:
は、あなたがメーリングリストに加入することを可能にするAPIエンドポイントがあります。 可能なフローの1つは、ユーザーがPENDINGとして追加されていることです。 は、ユーザーが確認のために電子メールを受信してオプトインすることを意味します。
この場合、フロントエンド にメッセージを返信して、ユーザーに表示できるようにして、リンクをクリックするよう促します。
私の見解からすれば、これは本当にエラー状態ではなく、より多くのフォローアップメタ情報です。つまり、エラーメッセージに入れるのは概念的に論理的ではありません。また、エラーメッセージに入れても、フロントエンドは「本当のエラー」とは何とか区別しなければなりません(ステータスコードの分解能は低いので、衝突は避けられません)。
ただし、リソースにメタ情報として追加することはできません。だから私はこの情報をどこに置くべきか分かりません。
「レスポンス」リソースを定義してそこに入れるのが1つの解決策ですが、それはちょうどワームのように思えるでしょう。
アイデア?入力が大きく評価される
私は、リソースごとではなくトップレベルの_metaカテゴリを持つResponseオブジェクトを返すことができます。これはあなたが成功のメッセージのために奨励するものか、別の選択肢を持っていますか? – shokora
私は、フォローアップのメールを持っていないリクエストについては200/204を返します(あなたが身体を望むなら200、そうでないなら204)。フォローアップメールが必要なリクエストについては、提供したいメッセージなど、関連する情報が含まれている本文を202として返信します。励ましのメッセージはメタ情報ではないと私は考えています。 –
最後の文章が何を意味するのかよく分かりません。あなたは励ましのメッセージを含む身体を返しますが、メタ・フィールドには戻っていないと言いますか?あなたはどこに置くのですか?または、json-api仕様を検討していませんか? – shokora