私は REST API を設計しており、この特定のユース ケースでは、最善の方法とこのハイパーメディアがどのように見えるべきかを理解しようとしています。
シナリオは、発信者が、/persons?fields=lastName;filter=beginsWith=b
姓が「b」で始まる人のリストを返したいという理由で電話をかけるというものです。
以下は、関連するハイパーメディアを含めて成形/表現する最善の方法を見つけようとしている JSON 応答を示しています。
人物のリストを表示できますが、name プロパティのみが表示されます。これは、各人物の部分的な表現であるためです。
次に、ここに HATEAOS を追加しようとしましたが、追加するのに最も役立つものと、実際に何を参照する必要があるのか わかりません。
ここで返すグループ (リスト) 自体に href を提供できます。もしそうなら、どこで?私のようにルートオブジェクトに入れるのは意味がないと思います。ルートメタオブジェクトではなく、人々のリストを返すことが期待されているため、以下にあるものについては気分が良くありません。
また
この特定のインスタンスで HATEOS を実際に採用していない、または役に立たないと考える人はいますか?代わりに、ここに他のタイプの href リンクを提供する必要がありますか?
JSON - 返された人物オブジェクト (表現) のリスト
[
"meta": {
"rel": "self",
"href": "http://ourdomain.api/persons?fields=lastName;filter=beginsWith=b"
},
{
"name": {
"last": "best"
}
},
{
"name": {
"last": "bettler"
}
},
{
"name": {
"last": "brown"
}
}
]