そこで、Laravel 4 PHP フレームワークを使用して RESTful (できるだけ RESTful) API を構築しています。現在、数十の API 呼び出しが機能しており、制限、順序付け、単純なフィルタリングを行うためのプロセスがあります。呼び出しの 1 つの例を次に示します。
/api/v1/users?limit=10&offset=10&firstName=John&order[]=createdTimestamp desc
これにより、11 番目から 20 番目の名前が John という名前のユーザーが、createdTimestamp で降順に並べ替えられて返されます。ここでの単純なフィルタリングでは、完全一致 (=) のみを実行できます。また、REST API を介してより複雑なフィルタリング システムを提供できるようにしたいと考えています。このシステムは、!=、>、または LIKE などを実行できる方法で等価一致タイプを特定する機能をサポートします... 問題は、私が通常のクエリ文字列を介してこのタイプのフィルタリングを提供できるかどうかはわかりません。
REST API を介してこの複雑なフィルタリングを提供する最善の方法は何ですか? 「真に」RESTful ではないにもかかわらず、POST を介して実行することが最善の方法と考えられていますか (これにより、ユーザーが一部のブラウザーの URI 文字の長さの制限を超える長いクエリを実行しようとする問題を防ぐことができます)?