使应用程序获取strava数据,当用户接受连接到strava时,不了解如何获取client_id和client_secret

问题描述

我正在尝试制作一个获取strava用户信息(信息,活动等...)的应用。

我阅读了strava doc的说明:https://developers.strava.com/docs/authentication/

我在我的应用程序上得到了,我应该要求用户使用类似https://www.strava.com/oauth/authorize?client_id=22991&redirect_uri=https://printmyroute.xyz/activity&response_type=code&scope=activity:read_all,profile:read_all

的方式连接到strava。

然后,出现连接页面,然后显示授权。当用户接受授权时,我会在url中得到一个代码。大!但是要遵循文档,对活动进行请求,我需要client_id和client_secret才能发出此请求:

curl -X POST https://www.strava.com/api/v3/oauth/token \
  -d client_id=ReplaceWithClientID \
  -d client_secret=ReplaceWithClientSecret \
  -d code=ReplaceWithCode \
  -d grant_type=authorization_code

但是如何获取用户的client_id和client_secret。 (我可以使用我的client_id和client_secret发出请求,但这不是目标,我想访问用户的数据以便将其显示在他的应用中...)。

谢谢

解决方法

您可以在application page中找到客户端ID和客户端密钥。

client_idclient_secret是注册期间获得的应用程序参数,它们未连接到用户。

请注意,在此请求中,您还使用了用户接受授权时获得的code参数。

此请求后,您将得到一个refresh_token,它也特定于用户。

,

Spep1::在您的Strava帐户中添加一个应用

Spep2::将Auth与客户端ID和保密代码一起使用 Spep3::您可以在下次使用时刷新令牌。

you need to add an app in strava

Then need Auth 2 Authontication

enter image description here

感谢和祝福。