1

无论如何,WSO2 数据服务服务器中是否有注册服务,该服务使用具有相同基本 URL 的两种 GET 方法公开资源,一种用于获取所有资源,另一种用于仅获取特定资源。例如:

  • [HTTP GET] 学术/课程:返回所有课程
  • [HTTP GET] Academics/courses/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 方法只返回一个。

文档中,建议的方法是为此使用单数/复数,但我认为这不是最好/正确的方法。

有什么想法吗?

4

1 回答 1

0

恐怕这是目前 DSS 的限制,您不能通过查看参数使用相同的基本 URL 来调用两个不同的查询。正如您还提到的,另一种方法是使用不同的资源路径映射到查询。

在即将发布的 DSS v3.1.0 中,将支持您正在寻找的功能。

干杯,安佳娜。

于 2013-07-20T13:04:06.700 回答