【问题标题】:Strava api: segment leaderboard two people with same nameStrava api:段排行榜两个同名的人
【发布时间】:2020-08-14 18:11:59
【问题描述】:

我 16 岁,正在创建一个显示所有 Strava 路段排行榜的网站,但 Strava 只给你命名为“Paul M”。例如。在获取 API 时,有两个 Paul M,因此无法向人们区分这些并将他们的个人分数放在我的网站上。

使用此链接,您可以查看 API 数据: https://www.strava.com/api/v3/segments/23430539/leaderboard?club_id=318793&page=1&per_page=100&access_token=fd1971ba756d8d479623a62cb59115a688131077

我只是想知道是否有其他人遇到过这个问题?

如果链接不起作用,请发表评论,那是因为访问令牌已过期,我已经创建了一个动态创建新的函数,我可以给你

const link = `https://www.strava.com/api/v3/segments/23430539/leaderboard?club_id=318793&page=1&per_page=100&access_token=fd1971ba756d8d479623a62cb59115a688131077`

fetch(link)
    .then((res) => console.log(res.json()))
    
//the data is in the console log as a JSON object //

【问题讨论】:

  • 我已经构建了一个工具,可以汇总用于分析的荣誉/活动的数量,但是当您有相同名字和姓氏首字母的 kudoers 时,这个问题使得无法正确计算 - 他们在聚合中集中在一起。
  • 如果 Strava 还在响应中提供某种哈希或 ID(除了运动员 ID)来区分排行榜或活动荣誉中的运动员,但仍保持数据匿名,那就太好了。由于您无法确定独特的运动员,因此无法准确汇总任何数据进行分析。似乎为 API 用户提供能够区分它们的东西并没有什么坏处。

标签: javascript api fetch-api leaderboard strava


【解决方案1】:

是个人资料唯一的第一组数字,并且保持不变。这可以用来将用户标识为 id

29T11:10:22Z","start_date_local":"2020-04-29T12:10:22Z","rank":1},{"athlete_name":"Ray R." ,"elapsed_time":1879,"moving_time":1879,"start_date":"2020-04-

【讨论】:

  • 第一组数字是 start-date 和 start-date-local 这不起作用,因为如果有人做了两个活动,他们的开始时间会不同,所以这两个活动都不会受到影响他们的名字。这是两个重复的行: {"athlete_name":"Paul M.","elapsed_time":1844,"moving_time":1844,"start_date":"2020-04-29T11:10:22Z","start_date_local": "2020-04-29T12:10:22Z","rank":1}{"athlete_name":"Paul M.","elapsed_time":2089,"moving_time":1996,"start_date":"2020-04- 26T09:00:16Z","start_date_local":"2020-04-26T10:00:16Z","rank":6}
【解决方案2】:

here 所述,自 2018 年 1 月 17 日起,运动员特定数据需要进行身份验证。

因此您无法区分具有相同姓名/姓氏的两名运动员,但您可以计算经过身份验证的用户的个人得分(并将其存储在数据库中以供进一步阐述)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-31
    • 1970-01-01
    • 1970-01-01
    • 2021-09-21
    • 2021-10-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多