问题描述
我正在尝试制作一个获取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_id
和client_secret
是注册期间获得的应用程序参数,它们未连接到用户。
请注意,在此请求中,您还使用了用户接受授权时获得的code
参数。
此请求后,您将得到一个refresh_token
,它也特定于用户。
Spep1::在您的Strava帐户中添加一个应用
Spep2::将Auth与客户端ID和保密代码一起使用 Spep3::您可以在下次使用时刷新令牌。
感谢和祝福。