Withings API Body 示例
Withings API Body Sample
我正在尝试从此 Withings 端点取回数据:https://developer.withings.com/api-reference/#operation/measure-getmeas
但我尝试过的每一种组合都只是 returns:
状态body错误
503 无效参数
这是最近的 body,它不起作用:action=getmeas&meastype=meastype&meastypes=11&category=1&startdate=1641168000&enddate=1641254399
供参考:https://developer.withings.com/api-reference/#operation/measure-getmeas
根据您发布的内容,问题出在您的参数 meastype=meastype
上。如果你删除它那么它应该 运行 没问题。
假设您已按照程序获取访问令牌,您从 PowerShell 调用将如下所示:
Invoke-RestMethod -Method 'Post' -Headers @{ "Authorization" = "Bearer XXXXXXXXXXXXXXXXXX" } -Body "action=getmeas&meastypes=11&category=1&startdate=1641168000&enddate=1641254399" -Uri 'https://wbsapi.withings.net/measure'
这将 return 一个 JSON 结构,根据您 link 在问题中的文档,例如
{
"status": 0,
"body": {
"updatetime": "string",
"timezone": "string",
"measuregrps": [
{
"grpid": 12,
"attrib": 1,
"date": 1594245600,
"created": 1594246600,
"category": 1594257200,
"deviceid": "892359876fd8805ac45bab078c4828692f0276b1",
"measures": [
{
"value": 65750,
"type": 1,
"unit": -3,
"algo": 3425,
"fm": 1,
"fw": 1000
}
],
"comment": "A measurement comment"
}
],
"more": 0,
"offset": 0
}
}
如果您的“measuregrps”为空(如下图所示),则表示您选择的时间段内没有可用数据,因此您的设备未记录该参数或数据尚未同步到您的 Withings 帐户。
当我 运行 它时我得到了什么(我的设备不记录 HR):
status body
------ ----
0 @{updatetime=1641470158; timezone=Europe/London; measuregrps=System.Object[]}
另一种选择是将 Windows 子系统用于 Linux 到 运行 curl 命令。你基本上得到了同样的东西:
curl --header "Authorization: Bearer XXXXXXXXXXXXXXXXXXXXXX" --data "action=getmeas&meastype=11&category=1&startdate=1609925332&enddate=1641461360" 'https://wbsapi.withings.net/measure'
给予
{
"status":0,
"body":{
"updatetime":1641470640,
"timezone":"Europe\/London",
"measuregrps":[]
}
}
我正在尝试从此 Withings 端点取回数据:https://developer.withings.com/api-reference/#operation/measure-getmeas
但我尝试过的每一种组合都只是 returns:
状态body错误
503 无效参数
这是最近的 body,它不起作用:action=getmeas&meastype=meastype&meastypes=11&category=1&startdate=1641168000&enddate=1641254399
供参考:https://developer.withings.com/api-reference/#operation/measure-getmeas
根据您发布的内容,问题出在您的参数 meastype=meastype
上。如果你删除它那么它应该 运行 没问题。
假设您已按照程序获取访问令牌,您从 PowerShell 调用将如下所示:
Invoke-RestMethod -Method 'Post' -Headers @{ "Authorization" = "Bearer XXXXXXXXXXXXXXXXXX" } -Body "action=getmeas&meastypes=11&category=1&startdate=1641168000&enddate=1641254399" -Uri 'https://wbsapi.withings.net/measure'
这将 return 一个 JSON 结构,根据您 link 在问题中的文档,例如
{
"status": 0,
"body": {
"updatetime": "string",
"timezone": "string",
"measuregrps": [
{
"grpid": 12,
"attrib": 1,
"date": 1594245600,
"created": 1594246600,
"category": 1594257200,
"deviceid": "892359876fd8805ac45bab078c4828692f0276b1",
"measures": [
{
"value": 65750,
"type": 1,
"unit": -3,
"algo": 3425,
"fm": 1,
"fw": 1000
}
],
"comment": "A measurement comment"
}
],
"more": 0,
"offset": 0
}
}
如果您的“measuregrps”为空(如下图所示),则表示您选择的时间段内没有可用数据,因此您的设备未记录该参数或数据尚未同步到您的 Withings 帐户。
当我 运行 它时我得到了什么(我的设备不记录 HR):
status body
------ ----
0 @{updatetime=1641470158; timezone=Europe/London; measuregrps=System.Object[]}
另一种选择是将 Windows 子系统用于 Linux 到 运行 curl 命令。你基本上得到了同样的东西:
curl --header "Authorization: Bearer XXXXXXXXXXXXXXXXXXXXXX" --data "action=getmeas&meastype=11&category=1&startdate=1609925332&enddate=1641461360" 'https://wbsapi.withings.net/measure'
给予
{
"status":0,
"body":{
"updatetime":1641470640,
"timezone":"Europe\/London",
"measuregrps":[]
}
}