Php 不要给出Garmin Api的每日摘要

Php 不要给出Garmin Api的每日摘要,php,curl,iot,healthkit,garmin,Php,Curl,Iot,Healthkit,Garmin,我想通过garmin API获取设备的“每日摘要” 我可以得到数据表,但不能通过api请求 为了获取“每日摘要”,我执行以下步骤: 我创建curl命令: curl-v-X POST-H“内容类型:application/json;charset=utf-8”-d'{“dailies”:[{“userAccessToken”:“userAccessToken”,“uploadStartTimeInSeconds”:1514847600,“uploadEndTimeInSeconds”:151559

我想通过garmin API获取设备的“每日摘要”

我可以得到数据表,但不能通过api请求

为了获取“每日摘要”,我执行以下步骤:

我创建curl命令:

curl-v-X POST-H“内容类型:application/json;charset=utf-8”-d'{“dailies”:[{“userAccessToken”:“userAccessToken”,“uploadStartTimeInSeconds”:1514847600,“uploadEndTimeInSeconds”:1515597660,“callbackURL”:”https://healthapi.garmin.com/wellnessapi/rest/dailies"}]}' http://mysite/testping.php

其中userAccessToken-是我用来登录的tocken。作为响应,我收到了一个没有任何数据的请求

我使用手册“HealthRESTAPI规范”作为示例


请回答,为什么我不提供请求中的任何数据?

我发现两个问题。如果直接向Garmin的API服务器发出请求,则需要签名(OAuth1),并且根据HealthAPI文档,该请求是GET,而不是POST

最重要的是,CURL请求发送到本地PHP服务器,而不是Garmin。我不知道该服务器上运行的是什么,因此无法进一步调试。Garmin地址位于JSON数据负载中,但curl将此负载发布到


我建议从直接向Garmin API服务器发送请求开始,如果可能的话,使用Postman之类的工具来确保请求的格式正确,并为OAuth v1签名,等等。

我可以看到两个问题。如果直接向Garmin的API服务器发出请求,则需要签名(OAuth1),并且根据HealthAPI文档,该请求是GET,而不是POST

最重要的是,CURL请求发送到本地PHP服务器,而不是Garmin。我不知道该服务器上运行的是什么,因此无法进一步调试。Garmin地址位于JSON数据负载中,但curl将此负载发布到


我建议首先直接向Garmin API服务器发送请求,如果可能的话,使用Postman之类的工具确保请求格式正确,并为OAuth v1签名,等等。

回填设置一个触发器,将新的历史数据推送到您的端点

引用Garmin的健康API规范文件-第8节:


“回填请求立即返回空响应,而实际的回填过程在后台异步进行。回填完成后,将生成并发送通知,就像该时间段的数据是新同步的一样。Ping服务和推送服务都受摘要回填支持。单个回填请求的最大日期范围(包括)为90天,但允许发送代表其他90天期间的多个请求以检索其他数据。”

回填设置一个触发器,将新的历史数据推送到终点

引用Garmin的健康API规范文件-第8节:

“回填请求立即返回空响应,而实际的回填过程在后台异步进行。回填完成后,将生成并发送通知,就像该时间段的数据是新同步的一样。Ping服务和推送服务都受摘要回填支持。单个回填请求的最大日期范围(包括)为90天,但允许发送代表其他90天期间的多个请求以检索其他数据。”