问题标签 [strava]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1623 浏览

php - 首次授权后未发布 Strava API 刷新令牌

也许有人可以帮助我,我正在尝试在我的应用程序首次授权运动员后发布刷新令牌,Oauth 2.0 在邮递员中运行良好,我可以通过这种方式获取刷新令牌,但不是在我的个人 php脚本......我只得到了这种 JSON 响应:

但我正在等待刷新令牌和过期日期,如本例中的 Strava API 文档所示:

我多次尝试从测试帐户撤销对应用程序的访问,以模拟新的身份验证请求,但我没有找到答案,这是我调用令牌交换 URL 的代码:

PS:Oauth 2.0 在邮递员中工作正常,我可以通过这种方式获取刷新令牌,但不能在我的个人 php 脚本中......

谢谢帮助。

0 投票
4 回答
194 浏览

android - 从 JSON 获取数据?

我想从此 Json url获取用户名。我有这段代码,但它不能让我得到数据说

Json解析错误

这是代码:

HttpHandler.java

MainActivity.java

这是我在 google 上找到的一个示例,并尝试根据需要对其进行一些更改。我放了一个空的 JsonArray。我也尝试了其他示例,但我不明白出了什么问题。

**

> 新问题

如果我的url是这样的?和其他的有什么区别?

新的Json

**

0 投票
1 回答
211 浏览

playframework - javastravav3api 未拾取 cache.ccf 文件

cache.ccf 文件的位置

stk

-app
-bin -build.sbt
-cache.ccf
-conf
-lib
-libexec
-LICENSE
-logs
-project
-public
-README
-target
-test

堆栈跟踪:

0 投票
0 回答
915 浏览

javascript - 如何使用 html/javascript 从 oauth 授权流解析重定向 URL

我想知道如何执行以下操作:

我有一个包含以下代码的 HTML 页面:

这会将我发送到 strava 授权页面。当我授权时,我将使用以下 URL 重定向到我的本地主机:

http://localhost:5500/?state=&code=a43ddsdfasfsadf&scope=

如果正确理解授权流程,那么我需要使用 URL 中的代码请求令牌。但:

我使用 javascript/html。如何从 URL 中检索代码,以及如何在没有参数的情况下重定向回 l​​ocalhost?

谢谢。

0 投票
1 回答
355 浏览

javascript - 如何从脚本中检索令牌

我有以下脚本:

此脚本应授权客户端进行 strava 并检索令牌以供进一步使用。不知何故,我无法理解如何从 const 令牌中获取令牌。

当我调用 token.authorization() 时。它会授权。但我不知道如何从函数中检索 data.access_token 。

谢谢。

0 投票
2 回答
233 浏览

c# - 通过 httpwebrequest 登录 strava 失败

嗨,我正在尝试使用 HttpWebrequest 通过https://www.strava.com/session登录,但它没有让我登录。它给了我 302 的响应,这很好,但它永远不会将我重定向到https:// www.strava.com/dashboard

这是我正在使用的代码

客户端:

获取 crfs 令牌:

自定义键值对

登录:

字典数据 = new Dictionary();

有人可以告诉我我做错了什么吗?如果我在尝试在浏览器中登录 strava 时查看请求标头,它是相同的,但它仍然没有记录我。

0 投票
1 回答
1240 浏览

ios - iOS 的 strava api 中的授权回调问题

我在我的应用程序中集成了 strava api。我需要有关授权回调域的帮助,即在 api 注册期间需要,以便在授权后设备浏览器再次打开应用程序以供进一步使用。当我尝试提交myapp://作为回调域时,它给了我错误(此字段必须是域,没有斜杠或路径)。我似乎无法输入任何有效域。因为重定向 url 或 uri 是应用程序在其属性列表中描述的内容。它还自行在重定向 uri 中添加 http。例如,当我们myapp在 strava 和 plist 文件中注册为 url 方案时,myapp://在 safari 浏览器中点击会打开应用程序。但是 strava 将其更改为https://www.strava.com/oauth/authorize?client_id=*****&response_type=code&redirect_uri=http://myapp&approval_prompt=force.

为什么http://在重定向 uri 中添加了以及为什么我无法注册myapp://为重定向 uri?

我检查了一个在其重定向 uri 中有斜杠的较旧示例。那么该示例如何工作并在重定向 uri 中使用斜杠进行注册?

所以,请任何人帮助我解决这个问题。

提前致谢。

0 投票
0 回答
692 浏览

api - Strava API:快速下载分段工作,可能只需要一个请求

如果我有一个 Strava 活动 ID 列表(大约 800 个),那么获得每个活动的细分工作量的最快方法是什么?

根据我对 Strava API 文档的理解,目前唯一包含分段工作的端点是返回以下实例的端点DetailedActivity:(https://developers.strava.com/docs/reference/#api-Activities-getActivityById/activities/{id}

但这意味着我必须执行 800 个请求,每个活动一个,这将迫使我的 Web 应用程序的用户等待。

然而,有像这样的 Strava 驱动的应用程序:

https://www.marcellobrivio.com/projects/strava-toolbox/

一旦用户通过 Strava 进行身份验证,它几乎可以立即提供对其细分工作的分析。

任何有使用 Strava API 经验的人都可以就如何实现这一点提供建议吗?

0 投票
1 回答
378 浏览

python - aiohttp:对同一 URL 的多个请求返回身份验证错误,但 URL 正确

我正在使用下面的代码向 Strava API 发出 599 个异步请求。出于某种原因,我对他们每个人的回应是

{"message":"授权错误","errors":[{"resource":"Application","field":"","code":"invalid"}]}

access_token这是您的查询字符串参数无效时通常会遇到的错误类型。但在这种情况下,令牌是 100% 正确的:当只是在浏览器中手动复制粘贴时,URL 返回正确的响应。

错误的原因可能是什么以及如何解决?可能是aiohttp会话以某种方式弄乱了身份验证过程?

注意:出于隐私原因,以下代码中的令牌是假的。

0 投票
1 回答
3540 浏览

api - 如何实现“GET”请求以适用于 Postman 的 STRAVA API?

进一步更新...

我得到了这个工作。尽管 Strava 的文档没有说调用中的任何参数都是强制性的,但似乎它们都是强制性的。您需要在纪元时间的参数之前和之后放置有效的参数,并且......(这是让我有点困惑的部分)您需要提供页码和每页的项目。每页的项目默认为 30,但页码不默认。它的工作方式是,如果你说第 1 页和每页 30 个项目,你会得到项目 1 - 30。如果你说第 3 页和每页 30 个项目,你会得到项目 31 - 60,依此类推。你必须创建一个循环,直到它得到一个空白页。然后您就知道您已检索到所有活动。(至少我认为它是这样工作的。)

阿德里安

问题更新...

经过一些挖掘和试验,我已经设法自己解决了一些问题(如下所述)。当您在 Strava 上的“我的 API 应用程序”下的设置下创建应用程序时,给出的令牌具有“读取”范围,并且似乎非常非常有限。

按照此处列出的步骤Strava 身份验证后,我能够获得具有以下范围的新令牌:

范围=读取,活动:读取,活动:read_all,配置文件:read_all,read_all

所以......我以为我是“黄金”,俗话说。

好吧,现在我可以使用以下方法进行个人活动:

https://www.strava.com/api/v3/activities/2110745394?include_all_efforts= "true"&access_token={{ADR_Strava_API_Key}}

但是当我尝试获取所有活动的列表时,我没有收到任何错误消息,但 Strava 只是返回

[] 这对于我认识的一名运动员来说有超过 1800 项活动。

我真正想要的是获取活动列表。任何帮助,将不胜感激。

谢谢

阿德里安

我可以使用邮递员使用以下 https 请求从 Strava 获取运动员信息:

https://www.strava.com/api/v3/athletes/19133707?access_token= {{ADR_Strava_API_Key}}

返回以下内容:

但是当我尝试使用此请求获取活动时:

https://www.strava.com/api/v3/19133707/activities?before=&after=1546293601&page=&per_page=&access_token= {{ADR_Strava_API_Key}}

我得到这个返回:

{“消息”:“未找到记录”,“错误”:[{“资源”:“资源”,“字段”:“路径”,“代码”:“无效”}]}

据我说,我要求提供 2019 年 1 月 1 日之后的所有记录,即纪元时间戳 1546293601。我知道在那之后该运动员有很多活动。(超过20)。

我还尝试使用以下方法进行单个活动:

https://www.strava.com/api/v3/activities/2110745394?include_all_efforts= "true"&access_token={{ADR_Strava_API_Key}}

我得到了结果:

{“消息”:“未找到资源”,“错误”:[{“资源”:“活动”,“字段”:“”,“代码”:“未找到”}]}

在 Strava 开发者页面上,给出了 HTTPie 的示例,如下所示:

https://www.strava.com/api/v3/activities/ {id}?include_all_efforts=" "授权:承载 [[token]]

所以我用 &access_token= 替换 "Authorization: Bearer [[token]]

也许这是我的错误,但 access_token 在第一个示例中有效。

如果这是一个完全白痴的问题,我很抱歉。我是初学者,我将不胜感激。

谢谢