fitbit API HTTPS 错误

fitbit API HTTPS error

我正在尝试通过 fitbit API 获取我的心率和睡眠数据,我正在使用它: https://github.com/orcasgit/python-fitbit

为了连接到服务器并获取访问和刷新令牌(我使用 gather_kays_oauth2 获取令牌)。

当我在 HTTP 中连接时,我确实设法获取了睡眠数据,但是当我试图这样获取 HR 时:

client.time_series("https://api.fitbit.com/1/user/-/activities/heart/date/today/1d.json", period="1d")

我收到这个错误:

HTTPBadRequest: 此请求必须使用 HTTPS 协议

由于某种原因我无法使用 HTTPS 连接 - 当我尝试连接时,浏览器甚至在 FITBIT 授权页面之前弹出 ERR_SSL_PROTOCOL_ERROR。

我尝试遵循并修复任何可能导致浏览器失败的设置,但它们都很好,但错误仍然弹出。

我尝试更改回调 URL,我搜索了其他 fitbit OAUTH2 连接指南,但我只能通过 HTTP 而不是 HTTPS 进行连接

有谁知道怎么解决吗?

您的代码应该是 client.time_series('activities/heart', period='1d') 以获得心率。

对于第一个参数资源,它不需要资源URL,但它会要求您输入其中一个:活动、body、食物、心脏、睡眠。

这里是 link 来自 python-fitbit 的源代码:

http://python-fitbit.readthedocs.io/en/latest/_modules/fitbit/api.html#Fitbit.time_series

已添加:

如果您想获取每分钟的完整心率数据(["activities-heart-intraday"] 数据集),请尝试 client.intraday_time_series('activities/heart')。它将 return 具有 one-minute/one-second 详细信息的数据。

好的,我已经解决了与我的需要相关的 HTTPS 问题。是因为我发了一个请求给.

https://api.fitbit.com//1/user/-/activities/recent.json

我删除了 .com 之后的附加正斜杠,它起作用了

https://api.fitbit.com/1/user/-/activities/recent.json

但是,这与您 return 向我发送相同消息时遇到的问题不同 this request must use the HTTPS protocol

这表明由于对 Fitbit 的格式错误的请求而导致的任何未处理的错误 return 同样的错误。而不是让您对刚刚发生的事情有更多线索。