如何为Mockoon配置带QueryParam的端点以适配Quarkus应用调用?
Mockoon适配Quarkus RestClient带QueryParam的GET路由配置方案
基础场景:固定响应(无需匹配QueryParam值)
你当前的配置其实已经能正常工作——Mockoon的/search/data GET路由会自动匹配所有路径相同、带任意dataCode参数的请求,不需要在路由路径里额外拼接?dataCode=xxx。只要请求的端口、路径正确,不管dataCode传什么值,都会返回你预设的响应体。
进阶场景:根据dataCode值返回不同响应
如果需要根据dataCode的具体值返回差异化内容,可通过以下两种方式配置:
方法1:精准匹配特定dataCode值
- 打开
/search/data路由的编辑界面 - 切换到请求标签页,找到「查询参数」区块
- 点击「添加查询参数」,填入:
- 键:
dataCode - 值:你要匹配的具体内容(比如
USER_INFO)
- 键:
- 保存后,只有当请求的
dataCode参数等于该值时,才会触发此路由的响应。若需匹配多个值,可创建多个同路径的路由,分别设置不同的dataCode匹配值和响应体。
方法2:用模板语法动态生成响应
利用Mockoon的模板功能,根据dataCode值动态返回响应内容:
- 打开路由的响应标签页,将响应体切换为「模板」模式(点击响应体输入框上方的「模板」按钮)
- 使用
queryParam助手函数获取请求中的dataCode参数,配合条件判断编写模板,示例如下:
{{#if (eq (queryParam "dataCode") "USER_INFO")}} {"code":200,"data":{"userId":123,"userName":"张三"}} {{else if (eq (queryParam "dataCode") "PRODUCT_INFO")}} {"code":200,"data":{"productId":456,"productName":"测试商品"}} {{else}} {"code":400,"msg":"无效的dataCode参数"} {{/if}}
- 保存配置后,Mockoon会根据请求中
dataCode的实际值,自动生成对应的JSON响应。
补充说明:Mockoon的
queryParam模板助手用于获取请求中的查询参数值,语法为{{queryParam "参数名"}},可结合条件判断、字符串处理等逻辑实现动态响应。
内容的提问来源于stack exchange,提问作者rafael alfieri perracini
相关产品推荐
相关产品推荐

