我正在嘗試使用 Python 呼叫 Google Fit API,但會話示例對我不起作用。谷歌提供的例子:
GET https://fitness.googleapis.com/fitness/v1/users/me/sessions?activityType=97 HTTP/1.1
Authorization: Bearer [YOUR_ACCESS_TOKEN]
Accept: application/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"
headers = {
"Authorization": "Bearer {}".format(token),
"Accept": "application/json"
}
session_call = requests.post(url_session, headers=headers)
return Response(session_call)
如果我呼叫 Google Fit 的另一個 API,它就可以作業。因此,身份驗證不是問題。我遵循檔案并呼叫會話端點不需要正文
@api_view(['GET'])
def googleFitView(request):
social_token = SocialToken.objects.get(account__user=2)
token=social_token.token
url = "https://www.googleapis.com/fitness/v1/users/me/dataset:aggregate"
headers = {
"Authorization": "Bearer {}".format(token),
"Content-Type": "application/json;encoding=utf-8",
}
body = {
"aggregateBy": [{
"dataTypeName": "com.google.activity.segment",
}],
"startTimeMillis": 1634767200000,
"endTimeMillis": 1634853600000
}
respo = requests.post(url, data=json.dumps(body), headers=headers)
return Response(respo)
uj5u.com熱心網友回復:
看起來您想進行 GET 呼叫,但您正在以下方法中呼叫 POST googleFitView
@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"
headers = {
"Authorization": "Bearer {}".format(token),
"Accept": "application/json"
}
# session_call = requests.post(url_session, headers=headers) -- This is a post call.
session_call = requests.get(url_session, headers=headers)
return Response(session_call)
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/332823.html
上一篇:只在for回圈結束后執行代碼
下一篇:代碼拋出錯誤,寫在結束后但為什么
