编程语言
首页 > 编程语言> > php – Bitbucket webhook不发送有效载荷

php – Bitbucket webhook不发送有效载荷

作者:互联网

我是webhooks的新手,每当我推送到我的仓库时,我都会尝试自动部署到我的网站.

我将我的bitbucket repo上的webhook设置为一个包含一个简单的php脚本的URL:

if(isset($_POST['payload'])) {
    logMsg("Got stuff\n");
} else {
    logMsg("No stuff\n");
}

在我推送到我的仓库之后,webhook将请求脚本正常但没有发送有效负载.我的日志文件总是说“没有东西”.

我错过了什么?

解决方法:

新的Bitbucket webhooks在请求体中发送有效负载,而不是像之前的“服务”那样在请求头中发送.
因此,要访问有效负载,您必须读取请求正文,如下所示:

$payload = file_get_contents('php://input');

或者像那样:

$payload = stream_get_contents(STDIN);

Etvoilà!

标签:php,git,bitbucket,webhooks
来源: https://codeday.me/bug/20190829/1762499.html