:LIKE条件付きのREST APIを設計するにはどうすればよいですか?私は、RESTのAPIを設計し、「人」のための実体を持ってい
GET http://localhost/api/people
は、システム内のすべての人々
GET http://localhost/api/people/1
のリストは、ID 1
で人を返しますGET http://localhost/api/people?forename=john&surname=smith
姓と名が一致するすべての人物を返しますが、私はさらに要件があります。たとえば、forenameが "jo"で始まるすべての人物をAPIコンシューマが取得できるようにする、最もクリーンでベストプラクティスな方法は何ですか。
私はいくつかのAPIはこのような操作を行う見てきました:
チルダは「ファジー」マッチを意味GET http://localhost/api/people?forename=jo~&surname=smith
。一方、私はそれが完全に異なる基準で実装されていることを見てきました。 -soundslike(SOUNDEXの試合のいくつかの並べ替えのために)、-contains、私は-endswithている可能性があります考慮ビット面倒なようだ
GET http://localhost/api/people?forename-startswith=jo&surname=smith
。
誰も、同じような機能を持つうまく設計されたREST APIの優れた例を示してくれますか?