我正在尝试通过fitbit API获取心率和睡眠数据,我正在使用: https://github.com/orcasgit/python-fitbit
为了连接到服务器并获取访问权限并刷新令牌(我使用gather_kays_oauth2来获取令牌)。
当我在HTTP中进行连接时,我确实设法获取睡眠数据,但是当我试图获得这样的HR时:
"responsive": {
"enabled": true,
"addDefaultRules": false,
"rules": [
{
"maxWidth": 400,
"overrides": {
"legend": {
"enabled": false
}
}
}
我收到此错误:
HTTPBadRequest:此请求必须使用HTTPS协议
由于某种原因我无法用HTTPS连接 - 当我尝试它时,浏览器甚至在FITBIT授权页面之前弹出一个ERR_SSL_PROTOCOL_ERROR。
我试图关注并修复可能导致浏览器失败的任何设置,但它们都很好并且错误仍然会弹出。
我试图更改回调网址,我搜索了其他fitbit OAUTH2连接指南,但我只设法连接HTTP而不是HTTPS
有谁知道如何解决它?
答案 0 :(得分:2)
您的代码应为client.time_series('activities/heart', period='1d')
以获得心率。
对于第一个参数资源,它不需要资源URL,但它会要求您放置其中一个:活动,身体,食物,心脏,睡眠。
以下是python-fitbit
的源代码链接:
http://python-fitbit.readthedocs.io/en/latest/_modules/fitbit/api.html#Fitbit.time_series
添加了:
如果您想获得每分钟的全心率数据(["活动 - 心脏 - 日内"]数据集),请尝试client.intraday_time_series('activities/heart')
。它将以一分钟/一秒的细节返回数据。
答案 1 :(得分:0)
好吧,我已经根据需要解决了HTTPS问题。这是因为我向发送了请求。
https://api.fitbit.com//1/user/-/activities/recent.json
我在.com之后删除了额外的正斜杠,并且有效
https://api.fitbit.com/1/user/-/activities/recent.json
但是,这与您遇到的问题不同,它为我返回了相同的消息this request must use the HTTPS protocol
。
这将建议由于对Fitbit的请求格式错误而导致的任何未处理的错误均会返回该错误。与其为您提供更多有关刚刚发生的事情的线索。