gpt4 book ai didi

javascript - Strava API v3 获取所有运动员事件中的访问 token 问题

转载 作者:IT老高 更新时间:2023-10-28 23:25:19 27 4
gpt4 key购买 nike

我无法从 Strava 的 api 文档中的 url 访问所有运动员事件(我自己的)。

我能够获得自己的年初至今统计数据:

https://www.strava.com/api/v3/athletes/XXXXXXXX/stats?access_token=ACCESSTOKEN

我可以获取我的个人资料信息:

https://www.strava.com/api/v3/athlete?access_token=ACCESSTOKEN

但是当我尝试获取所有事件时:

https://www.strava.com/api/v3/athlete/activities?access_token=ACCESSTOKEN

我收到以下错误:

{
"message": "Authorization Error",
"errors": [
{
"resource": "AccessToken",
"field": "activity:read_permission",
"code": "missing"
}
]
}

我是否需要在 url 中的某处包含我的客户端 ID 或 key ?我已登录,所以不明白为什么我无法访问自己的信息。请指教🙏

最佳答案

2018 年 10 月 15 日,Strava 增强了 authorization引入 scopes 的新列表的过程.

您是否正在使用在 https://www.strava.com/settings/api 上找到的访问 token ? ?

此 token 的 scope:read 可能不足以执行您想要的操作(即您的事件是公开的还是私有(private)的?)。

如果您需要具有不同范围的新 token ,您必须遵循这些 steps .

第 1 步:将用户重定向到 Strava 的授权页面:

https://www.strava.com/oauth/authorize?
client_id=YOUR_CLIENT_ID&
redirect_uri=YOUR_CALLBACK_DOMAIN&
response_type=code&
scope=YOUR_SCOPE

第 2 步:从响应中读取 code 参数:

http://YOUR_CALLBACK_DOMAIN/?
state=&
code=AUTHORIZATION_CODE_FROM_STRAVA&
scope=YOUR_SCOPE

第 3 步:使用包含授权码的 POST 请求新的访问 token ;您会在 JSON 响应中找到新的 access_token

https://www.strava.com/oauth/token?
client_id=YOUR_CLIENT_ID&
client_secret=YOUR_CLIENT_SECRET&
code=AUTHORIZATION_CODE_FROM_STRAVA&
grant_type=authorization_code

您可以在您的application page 中找到客户端ID、客户端密码和回调域。 .

您可以在 documentation 中找到新范围的列表.

如果您是唯一使用您的应用程序的人,您可以使用浏览器手动执行前两个步骤,并将 http://localhost 作为回调域。

关于javascript - Strava API v3 获取所有运动员事件中的访问 token 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52880434/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com