Strava webhook 事件数据未接收

问题描述 投票:0回答:1

我正在开发 PHP 项目,需要 strava webhook 来在 Strava 用户活动发生变化时更新他们的数据。 我在这里是 webhook 的官方文档 https://developers.strava.com/docs/webhooks/ 我遵循此代码https://gist.github.com/erikdmitchell/2e165c57e618de14e1b208fceba2ee65并使webhook调用webhook.php

这是我在 webhook.php 上的 PHP 代码,用于接收来自 strava 的呼叫

$html = "";
$html = $html . '<hr/>' . json_encode($_GET) . '<hr/>' . json_encode($_POST) . '<hr/>' . json_encode($_REQUEST);

以及我所有从 Strava 接听电话的输出

<hr/>[]<hr/>[]<hr/>[]

我的问题是我尝试了很多方法,但无法从发送给我的 strava webhook 获取事件数据。当 Strava 调用我的 webhook.php 文件时,我没有看到来自 $_GET、$_POST 或 $_REQUEST 的更多信息

至少我需要哪个用户 ID 刚刚在 Strava 上添加/删除/更新他们的活动

欢迎您提出任何解决方案... 非常感谢

php api webhooks strava strava-api-v3
1个回答
0
投票

Strava 文档 的底部,它们展示了如何使用curl 将测试事件发送到您自己的 webhook。他们展示了使用

Content-Type: application/json
发布 JSON 正文。这意味着它不是
application/x-www-form-urlencoded
,不存在
$_POST
,你需要使用原始身体。

为此,请尝试以下操作:

$payload = file_get_contents('php://input');
$json = json_decode($payload, true);
© www.soinside.com 2019 - 2024. All rights reserved.