当前位置: 代码迷 >> 综合 >> MuleSoft知识总结-13.Mule组件(Set Variable,For Each,Choice)
  详细解决方案

MuleSoft知识总结-13.Mule组件(Set Variable,For Each,Choice)

热度:58   发布时间:2023-11-27 10:36:31.0

文章目录

  • 前言
  • Set Variable
  • For Each
  • Choice

前言

在《MuleSoft自学分享-12.使用POST请求从后端取会数据》中使用Post请求对后端进行访问,实现内容是根据员工编号返回员工信息数据,在后端获取数据并进行筛选。这次我们调整一下逻辑,在后端获取所有的数据后在Mule APP中进行筛选处理。

Set Variable

  1. 放入新的Sub Flow命名为employeeapi-Choice_Flow,选择Set Variable放入employeeapi-Choice_Flow中。设置变量名Name为id,Value值为Payload,这里的Payload(载荷信息)就是我们发送的请求体{“number”: “12345678”}。在这里我们把它设置为一个变量存入Mule APP中,在之后的程序中调用。
名称 功能
Name 设置变量名
Value 设置变量值(可为表达式)

在这里插入图片描述

  1. 放入Request组件和Transform Message组件并进行配置(与之前相同)请将Request中的Method设置为GET。
    在这里插入图片描述
    在这里插入图片描述

For Each

  1. 放入For Each组件(循环组件)。使用这个组件将后端取回来的数据进行循环。将Collection设置为表达式payload
名称 功能
Collection 需要进行循环的对象,可以是表达式
Counter Variable Name 循环计数器(写入变量)
Batch Size 循环每组输出的长度
Root Message Variable Name 进行循环的原始信息(写入变量)

在这里插入图片描述

Choice

  1. 使用Choice组件(相当于if else操作)在Expression中输入表达式payload.number==vars.id.number判断员工编号。Default框相当于else。
    在这里插入图片描述
  2. 使用Set Variable组件写入与员工编号匹配的员工数据,并名为employee
    在这里插入图片描述
  3. 使用Set Payload组件将筛选出的employ放入mule message的payload进行输出。
    在这里插入图片描述
  4. 将post:\ … 中Flow name设置为employeeapi-Choice_Flow。启动Mule APP使用PostMan进行测试
    在这里插入图片描述
    在这里插入图片描述
  相关解决方案