Mule Munit 模拟 http.uri.params

Mule Munit mock http.uri.params

我有一个使用 http 的流程,我有一个 GET 调用,它点击了一个类似的东西

https://localhost:8081/ref/{ID}

我知道我可以通过使用 mel 在代码中获取此参数,例如:

#[message.inboundProperties.'http.uri.params'.ID]

我需要在设置消息时模拟 uri 参数但没有成功。我已经尝试使用这个名称

在 "set message" 中设置
'http.uri.params'.ID

但我 运行 测试时似乎出错了。

这是在 mule 服务器 3.7.3 上使用 munit 流

请记住,http.uri.params 入站 属性 实际上包含一个 Map,后者又包含表示实际参数的条目。

您将需要设置一个名为 http.uri.params 的模拟入站 属性,其值是一个包含键 "ID" 和您想要的值的条目的映射。请记住,在 MEL 中,您可以 create a map 使用 [key1 : value1, key2 : value2, . . .].

像这样:

<mock:inbound-properties>
     <mock:inbound-property key="http.uri.params" value="#[['ID': '123']]"/>
</mock:inbound-properties>

@ksmo92 你可以试试下面的代码。它对我很有效。

<munit:set payload="#['']" doc:name="Set http.uri.params">
        <munit:inbound-properties>
            <munit:inbound-property key="http.uri.params" value="#[['name': 'Anu']]"/>
        </munit:inbound-properties>
 </munit:set>