我在Strava上创建了一个应用程序。使用read,activity:read,activity:read_all,read_all权限在我的帐户上授权我的应用程序。
我不想轮询他们的API中的活动,因为他们推荐的是webhooks。
因此,我创建了一个web钩子订阅,并通过回调url验证了它。
以下是Strava API对我成功创建的web钩子订阅的响应:
[
{
"id": 179***,
"resource_state": 2,
"application_id": 59***,
"callback_url": "http://*************.duckdns.org:8100/strava/webhook",
"created_at": "2021-01-22T20:42:46Z",
"updated_at": "2021-01-22T20:42:46Z"
}
]我的问题是我没有收到任何活动事件。
当我从我的帐户中删除我的应用程序时,我得到的唯一事件是撤销访问事件。
{
'aspect_type': 'update',
'event_time': 1611350203,
'object_id': 6881533,
'object_type': 'athlete',
'owner_id': 6881533,
'subscription_id': 179***,
'updates': {'authorized': 'false'}
}因此,这表明我的一方是正确的,因为事件是收到的。
我试着给Strava发了一封电子邮件,但我得到的只是一个自动回复,告诉我使用Strava API Google组来寻求帮助,这一点都没有帮助。
有谁知道出了什么问题吗?
发布于 2021-03-23 17:34:38
最后解决了我的问题,并在这里为其他人写了解决方案。可能没有这个问题的人正在用他们的编码语言使用Strava的库,这些语言在授权后已经获得了access_token和refresh_token。
如果您像我一样处理Strava Webhook API,那么在授权之后,access_token必须获得您的 refresh_token 和,如这里所解释的,https://developers.strava.com/docs/getting-started/#oauth
Strava Webhook API文档没有提到这一点,因为创建web钩子订阅不需要access_token。Strava API创建订阅并返回成功的响应。这是误导性的,因为您的端点不会得到任何web钩子事件。
https://stackoverflow.com/questions/65926051
复制相似问题