WSO2 Data Services Server には、同じベース URL を持つ 2 つの GET メソッドでリソースを公開するサービスを登録する方法があります。1 つはすべてのリソースを取得し、もう 1 つは特定のリソースのみを取得します。例えば:
- [HTTP GET] アカデミック/コース: すべてのコースを返します
- [HTTP GET] アカデミック/コース/9789: コード 9789 のコースを返します
そのために、次の構成で試しました。
<data ...>
...
<resource method="GET" path="academics/courses">
<call-query href="getAllCoursesQuery"/>
</resource>
<resource method="GET" path="academics/courses/{code}">
<call-query href="getCourseByCodeQuery">
<with-param name="courseCode" query-param="code"/>
</call-query>
</resource>
...
</data>
問題は、メソッドを呼び出してすべてのコースを返すと、パラメーターが欠落していることを示すエラーが発生し、GET メソッドを呼び出して 1 つだけを返そうとしているように見えることです。
ドキュメントでは、単数形/複数形を使用する方法が推奨されていますが、これは最善の/正しい方法ではないと思います。
何かアイデアはありますか?