WebHook接口部署入门内容,简易脚本实现

项目地址:https://github.com/adnanh/webhook

官方文档:https://github.com/adnanh/webhook/tree/master/docs


为什么会使用Webhook?

Webhook是一个可以用于前后端自动化交互的一个手段,通过http就可以实现前后端交互,以及和其他网站的协同交互,规则触发实现自动化运维等。

我是近期了解到Webhook的,此处简单记录学习笔记。


Webhook部署:

进入项目地址下载对应版本再放入自定义目录即可,没有什么好说的。

如果是编译安装,参考https://blog.csdn.net/qq_56676115/article/details/124301334

解压后直接使用 go build 命令即可得到文件 webhook ,然后使用 ldd 检查运行环境。


写入配置文件:

[
  {
    "id": "test",
    "execute-command": "/usr/local/webhook/shell/test.sh",        //需要运行的脚本路径
    "command-working-directory": "/usr/local/webhook/shell/"      //执行路径
  }
]


启动程序:

./webhook -hooks ./cfg.json  -verbose

默认启动端口为9000


测试访问:

 curl  http://127.0.0.1:9000/hooks/test  -H 'Content-Type: application/json'


程序侧返回内容:

[webhook] 2023/06/20 17:26:21 [f03bee] incoming HTTP GET request from 127.0.0.1:50276
[webhook] 2023/06/20 17:26:21 [f03bee] test got matched
[webhook] 2023/06/20 17:26:21 [f03bee] error parsing JSON payload EOF
[webhook] 2023/06/20 17:26:21 [f03bee] test hook triggered successfully
[webhook] 2023/06/20 17:26:21 [f03bee] 200 | 0 B | 105.709µs | 127.0.0.1:9000 | GET /hooks/test
[webhook] 2023/06/20 17:26:21 [f03bee] executing /usr/local/webhook/shell/test.sh (/usr/local/webhook/shell/test.sh) with arguments ["/usr/local/webhook/shell/test.sh"] and environment [] using /usr/local/webhook/shell/ as cwd
[webhook] 2023/06/20 17:26:22 [f03bee] command output: Message broadcasted <webhook-test>
[webhook] 2023/06/20 17:26:22 [f03bee] finished handling test


访问测试通过


发表评论

必填

选填

选填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。