You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Zeebe Kafka Connector发送JSON至Kafka并阻止格式转换?

解决Zeebe Kafka Connector自动转换JSON格式的问题

这种格式转换是因为Zeebe Kafka Connector默认会将流程变量序列化为Zeebe特有的键值对格式,而非标准JSON。以下是具体解决方法:

  • 将JSON存储为字符串类型变量
    不要直接在流程中存储JSON对象,而是将JSON以字符串形式保存。比如在流程中定义变量时,直接赋值为:

    "{\"id\": \"1234\"}"
    

    或者通过脚本任务将现有JSON对象转为字符串。

  • 配置Connector直接引用原始字符串变量
    在BPMN的Kafka Connector配置中,给message.value字段添加=前缀,指定直接引用变量的原始值,避免Zeebe解析变量格式:

    message.value = =myJsonStringVar
    

    这里的myJsonStringVar是你存储JSON字符串的变量名。

  • 调整连接器序列化配置
    如果使用配置文件(如application.yaml)管理Connector,确保指定字符串序列化器,让连接器直接发送原始字符串:

    zeebe:
      kafka:
        producer:
          value-serializer: org.apache.kafka.common.serialization.StringSerializer
    
  • 用脚本任务预处理变量
    如果流程中已有JSON对象变量,可添加脚本任务将其转为字符串:

    • FEEL脚本示例:stringify({id: "1234"})
    • JavaScript脚本示例:JSON.stringify(vars.get("myJsonObject"))
      之后将生成的字符串变量传给Kafka Connector即可。

完成配置后,发送到Kafka的消息就会保持标准JSON格式{"id": "1234"},不会再出现冒号转等号、双引号转单引号的问题。

内容的提问来源于stack exchange,提问作者mohammad amin rahimi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 13:07:09