我们可以统计 Mule 中通过浏览器传递的查询参数的数量吗

Can we count the number of query parameters passed through browser in Mule

我正在尝试编写一个动态工作的存储过程。例如,如果我将三个查询参数从浏览器传递到流,它应该分配给存储过程,并且它应该只从数据库中检索传递值的值。 (注意:我在我的存储过程中使用 select 查询)。我应该能够传递 n 个查询参数。谁能帮我解决这个问题。

查询参数可作为 Map 使用,因此您只需调用 .size():

message.inboundProperties['http.query.params'].size()

关于如何获取查询参数键名的查询:

使用下面的表达式获取第一个查询参数键名。根据查询参数编号更改索引值。

#[message.inboundProperties.'http.query.params'.keySet().toArray()[0]]

请参阅下面的示例代码,它遍历查询参数并将每个查询参数键名存储到变量中,然后将其打印在记录器中。

<foreach collection="#[message.inboundProperties.'http.query.params'.keySet()]" doc:name="For Each"> <set-variable variableName="QueryPramKey" value="#[payload]" doc:name="Variable"/> <logger message="--- Query param kay names: #[flowVars.QueryPramKey]" level="INFO" doc:name="Logger"/>