使用Python调用Google Fit API的sessions接口调用失败问题求助
问题排查结果
- 核心错误:HTTP请求方法不匹配
官方示例明确sessions接口使用GET方法发起请求,你现有代码调用时误用了requests.post(),方法不符合接口要求会直接导致请求失败。 - 可选优化点1:补充查询参数
虽然接口不强制传参,但官方示例携带了activityType=97筛选条件,你也可以按需追加时间范围等查询参数,避免无筛选条件时返回空数据。 - 可选优化点2:响应体解析
你现有代码直接返回requests响应对象会出现序列化错误,需要调用.json()方法解析响应内容后再返回。
修正后可用代码示例
@api_view(['GET']) def googleFitView(request): social_token = SocialToken.objects.get(account__user=2) token=social_token.token # 可根据需求调整查询参数 url_session= "https://fitness.googleapis.com/fitness/v1/users/me/sessions?activityType=97" headers = { "Authorization": "Bearer {}".format(token), "Accept": "application/json" } # 改为GET请求 session_call = requests.get(url_session, headers=headers) return Response(session_call.json())
内容的提问来源于stack exchange,提问作者diabetico
相关产品推荐
相关产品推荐

