# Webhook触发组件常见问题归纳

来源快照：`result_data_new_260518.json`

- 来源 ID：`1241150174624423979`
- 模块：低代码平台e-builder
- 目录：常见问答 - 动作流
- space ID：`1157961794811633670`
- 原文链接：未提供
- 产品基线：未提供

## 正文

#### **问题1：webhook组件的地址如何从内网地址改为外网地址**

**解决方案：** weaver-env.properties  中的   env.weaver.dataMap[opengateway.domain]

 

单体环境：E10目录/webapps/ROOT/WEB-INF/classes/weaver/config/config-center/weaver-env.properties

 

组合和微服务环境直接去注册中心找该配置文件

![](https://weapp.eteams.cn/papi/file/preview?fileId=1241151299797049351&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

 

#### **问题2：webhook组件的地址如何从127.0.0.1/调整开放平台调用地址**

![](https://weapp.eteams.cn/papi/file/preview?fileId=1241150690129797126&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

常见针对开放平台文档中调用地址的问题:  
1\. 客户需要做域名或需要做外网ip部署, 如何将开放平台文档中显示地址对应切换;  
2\. 开放平台地址显示为127.0.0.1:10600, 无法正常调用开放平台接口;

   
**调整步骤:  **

①获取正确开放平台地址->②调整配置文件中开放平台配置->③重启开放平台对应服务

  
①获取正确开放平台地址(对应域名或ip:port):  
  1\. 客户外网或域名部署: 若客户需要做域名或需要做外网ip, 请确认域名或外网ip代理到内网上述确认的nginx的ip端口而不是E10主服务上, 具体nginx端口可通过第二点确认;  
  2\. nginx端口确认: 在运维平台中依次访问【日常维护】-【系统&配置】-【系统信息】-【周边服务】中查看nginx服务对应IP端口(若运维平台此地址显示为127.0.0.1:端口, 将前ip替换为运维平台登录ip);

 

②调整配置文件中开放平台配置:  
在【weaver-env.properties】配置文件中做以下配置项调整  
env.weaver.dataMap[opengateway.domain]=第①步获取的开放平台地址

 

weaver-env.properties 配置文件所在路径:  
微服务和组合部署 nacos中可直接打开 weaver-env.properties  
单体部署在服务器上 E10目录/webapps/ROOT/WEB-INF/classes/weaver/config/config-center/weaver-env.properties

 

③重启开放平台对应服务  
调整之后重启openapi所在服务，可以在运维平台【升级中心】-【服务升级】-【服务版本】通过服务名过滤查询得到(单体部署为E10, 一般组合为e10-common服务, 如不确定请先确认)

备注：因部署时未正确替换为nginx的服务地址导致开放平台文档显示为127.0.0.1或部署后重新配置域名的需要， 可以调整配置实现对应场景

更详细的解说可参考了下面的文档：[https://www.e-cology.com.cn/sp/ebdfpage/card/0/928388392735875142/1156570655013109828 ](https://www.e-cology.com.cn/sp/ebdfpage/card/0/928388392735875142/1156570655013109828 "https://www.e-cology.com.cn/sp/ebdfpage/card/0/928388392735875142/1156570655013109828 ")

#### **问题3：ESB中设置了webhook触发动作流，使用postman调用显示请求发生错误，但是ESB的日志是有返回信息的**

![](https://weapp.eteams.cn/papi/file/preview?fileId=1241152579927572488&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

![](https://weapp.eteams.cn/papi/file/preview?fileId=1241152970558676995&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

**解决方案：** 状态码要按规范配置，状态码详解可参考下方链接：<https://cloud.tencent.com/developer/article/1025858>![](https://weapp.eteams.cn/papi/file/preview?fileId=1241153073730166786&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

如果需要自定义错误码，可以放到body参数里面 

![](https://weapp.eteams.cn/papi/file/preview?fileId=1241153133973749763&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

#### **问题4：ESB动作流触发组件为webhook类型，执行组件配置异常处理失败跳过，但是又想要动作流状态标识失败便于排查定位问题如何配置？**

方案1：新建一个表单，接口失败时，插入失败的动作流ID和当前动作流执行实例编号，方便定位  
方案2：接口失败时，发送消息提醒，提醒内容显示失败的动作流ID和当前动作流执行实例编号

![](https://weapp.eteams.cn/papi/file/preview?fileId=1241154546800713732&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

#### **问题5：如何根据webhook的地址找到对应的动作流：**[**https://api.mulinquan.cn/api/open-esb/server/webhook/trigger/YWYzMDBkMDRhMTI1NGE3ZmFiN2JiYmE3ZWJmZmJiNGY=**](https://api.mulinquan.cn/api/open-esb/server/webhook/trigger/YWYzMDBkMDRhMTI1NGE3ZmFiN2JiYmE3ZWJmZmJiNGY=)

![](https://weapp.eteams.cn/papi/file/preview?fileId=1245886492854853643&type=redirect&customParam=%7B%22isExtDist%22%3Atrue%2C%22distributeId%22%3A%22%22%2C%22externalId%22%3A%22%22%2C%22appId%22%3A%22%22%7D)

**解决方案：** 通过SQL语句去查找对应的动作流id和动作流名称

SELECT 

[ea.id](http://ea.id), 

[ea.NAME](http://ea.NAME)

FROM 

esb_web_hook_trigger hook 

INNER JOIN esb_application_event eae ON [hook.id](http://hook.id) = [eae.data](http://eae.data)_id 

INNER JOIN esb_application ea ON [ea.id](http://ea.id) = eae.application_id 

WHERE 

ea.delete_type = 0 

AND hook.request_code = 'YWYzMDBkMDRhMTI1NGE3ZmFiN2JiYmE3ZWJmZmJiNGY='
