ウィキペディアでは、コレクション メンバーをリンクとして返し、必要に応じて各メンバーの詳細を返すように指定されています。この場合、無制限であるため、明らかにコレクション全体を返すことはできません。大規模なコレクションで構築した RESTful API は、ページ分割されたコレクションを返します。これがあなたのユースケースで返すのに役立つかどうかはわかりませんが、HAL を使用しているようです。もしそうなら、リンクされたデータの場合は次のようになります。
{
"_links": {
"self": { "href": "/fib?page=2" },
"next": { "href": "/fib?page=3" },
"prev": { "href": "/fib?page=1" },
"fibs": [
{"href": "/fib/4" },
{"href": "/fib/5" },
{"href": "/fib/6" }
},
}
またはこれが埋め込まれた場合:
{
"_links": {
"self": { "href": "/fib?page=2" },
"next": { "href": "/fib?page=3" },
"prev": { "href": "/fib?page=1" },
},
_embedded: {
"fibs": [
{
"_links": {"self": "/fib/4" },
"value": 2
},
{
"_links": {"self": "/fib/5" },
"value": 3
},
{
"_links": {"self": "/fib/6" },
"value": 5
}
}
}
HAL 仕様でこれと同様の例を見ることができます: https://datatracker.ietf.org/doc/html/draft-kelly-json-hal-00#section-6
page
ユーザーがクエリ文字列パラメーターを指定しない場合、最初のページが返されます。
コレクション (ページ分割または全体) を返すことが意味をなさない場合は、405 Method Not Allowed HTTP 応答コードを返すことをお勧めします。コレクションに項目 (POST) を挿入できない場合は、それに対しても同じ 405 応答が返される可能性があります。