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

如何通过REST调用获取Camunda已部署Workflow WAR版本?

可以通过Camunda REST API获取已部署工作流WAR包的版本信息

当然可以!作为拥有Camunda管理员权限的你,完全不需要操作系统权限,就能通过官方提供的REST API获取到已部署WAR包的版本相关信息。下面给你两种实用的方法:

1. 获取部署元数据里的版本(适用于部署时指定过版本的情况)

如果你在部署WAR包的时候,显式指定了version参数,或者你的部署流程自动关联了版本标识,直接调用部署查询接口就能拿到:

  • 请求方式:GET
  • 接口路径:/engine-rest/deployment
  • 可以加name参数过滤,精准定位到你的WAR包对应的部署(比如你的WAR包部署名称是my-workflow-app,就加?name=my-workflow-app)

举个curl调用的例子:

curl -X GET "http://你的Camunda地址:端口/engine-rest/deployment?name=my-workflow-app" -H "Accept: application/json"

返回的JSON里,每个部署条目会包含id、name、deploymentTime,如果部署时设置了version,这个字段也会直接返回给你。

2. 从WAR包的MANIFEST.MF里提取版本(通用方案)

如果你的WAR包在META-INF/MANIFEST.MF里配置了版本信息(比如Implementation-Version: 1.3.0),Camunda的REST API不会直接返回这个,但你可以分两步间接获取:

  1. 先调用资源列表接口,找到WAR包里的META-INF/MANIFEST.MF:
    curl -X GET "http://你的Camunda地址:端口/engine-rest/deployment/{部署ID}/resources" -H "Accept: application/json"
    
  2. 拿到资源列表后,调用资源内容接口获取MANIFEST.MF的文本内容:
    curl -X GET "http://你的Camunda地址:端口/engine-rest/deployment/{部署ID}/resource/META-INF%2FMANIFEST.MF/data" -H "Accept: text/plain"
    

之后你就能从返回的文本里提取出对应的版本信息了。

小提醒

  • 管理员权限默认就能访问这些REST端点,不用额外配置权限
  • 如果部署WAR包时没手动设置版本,Camunda不会自动生成版本字段,这时候就只能靠MANIFEST.MF里的信息啦

内容的提问来源于stack exchange,提问作者hippocrene

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 04:02:17