派生したデータを提供するためのマイクロサービスがある場合は、残りのAPIをどのように設計する必要があるか分かりません。Rest API:派生データにアクセスするためのパス
私は顧客を持っていると私は顧客にアクセスする場合と、私はAPIを定義します:これは、顧客
について私たちが知っているすべてのものを返します/顧客/ 1234
- :例えば
しかし、顧客が以前に別のアカウント番号でシステムに知らされているかどうかを私に知らせるマイクロサービスを提供したい場合は、どうすればいいですか?私はどちらが正しいいないようです
このロジックはmicroserviceになりたいが、どのように私はAPIを定義します
顧客/ 1234/previouslyKnow
customerPreviouslyKnown/1234。最初のケースでは、それは意味
顧客/
1234は、すべての顧客情報を取得するために使用することができますがmicroserviceがこれを提供していません。
混乱しています!
説明のためにいくつかの詳細を追加します。
私の問題は、顧客関連のすべてを処理する大規模なサービスが本当に必要ないと思います。顧客の注文、顧客情報、顧客の履歴、顧客のステータス(生きている、紛失した、死んだ、など)を処理する軽量サービスがあれば、より良いでしょう。
それはこれらのすべては
/顧客/ XXXX
で始まるだろう唯一の顧客/ XXXXがで余分に与えられた場合にはそのすべてのサービスがバック顧客オブジェクトを提供することが期待される私を打ちます/ ordersのようなパス
また、上記のデータのいくつかは、実際にはどこからでも保持されているわけではなく、このロジックを呼び出しコードではなくサービス内に隠しておきたいものです。では、これがどのように要求され、返されますか?
お客様が存在するかどうか確認しますか? –
リソースが存在するかどうかをチェックしたい場合は、 'HEAD/customer/1234'を実行してください。それは、応答のために全身を集める必要なく、応答を生成します。 –
私はそれについての答えを書いていましたが、@RobertBräutigamはもっと速かったです:) –