Mule应用程式不断触发错误的流程-可能出现RAML问题

时间:2018-07-17 17:54:10

标签: mule anypoint-studio raml raml-1.0

我写了一个简单的raml,它可以获取所有客户,通过ID获取客户或通过名称获取客户。 RAML具有以下结构:

/customer
   get:
      ...
   /{id}
      get:
         ...
   /{name}
      get:
         ...

我的问题是当我传递客户名称时,例如john然后,它继续进入GET {id}的处理,当我查看了请求URI时,它显示了/ api / customer / john,因此看起来它属于GET {id}处理,因为它无法区分哪个它是URI参数,而GET {id}是XML中的第一个流程。

如何防止这种情况,并将其转到GET {name}?

我从Anypoint API控制台并使用Mule 4.1和Anypoint 7调用它。

谢谢

1 个答案:

答案 0 :(得分:1)

URL参数只是字符串。因此,raml和apikit无法将两者区分开。他们无法知道什么是“名称”与“ id”。

我将其更改为具有customer / {id},并在客户资源?name = John上使用查询Param