优步API iOS OAuth 2.0

Gar*_*ary 2 oauth ios oauth-2.0 uber-api

我试图创建一个iOS,它将使用优步API来做一些事情,比如获取游乐设施和什么不是.我试图在iPhone上实现OAuth 2.0而不使用任何服务器端帮助.

那可能吗?有没有人这样做过?

以下是一些参考:

优步认证:https://developer.uber.com/v1/auth/

Oauth 2.0:https://aaronparecki.com/articles/2012/07/29/1/oauth2-simplified

sun*_*sun 7

是的,这是可能的.我能够使用优步API为我的应用配置OAuth2.以下是分步说明:

  1. 在您的应用中,使用您的client_id 重定向到https://login.uber.com/oauth/authorize,response_type=code以便允许用户授权您的应用.
  2. 成功授权后,优步将重定向到您的redirect_uri(您可以指定任何redirect_uri,包括localhost:xxxx用于测试目的等),为您提供一次性使用且有效10分钟的身份验证代码.实现回调以检索此身份验证代码.
  3. 使用步骤2中的有效身份验证代码,发出POST请求以交换访问令牌.作为一个简单的检查,我建议使用curl来确认访问令牌的有效性.例如: curl -F 'client_secret=YOUR_CLIENT_SECRET' \ -F 'client_id=YOUR_CLIENT_ID' \ -F 'grant_type=authorization_code' \ -F 'redirect_uri=YOUR_REDIRECT_URI' \ -F 'code=AUTHORIZATION_CODE' \ https://login.uber.com/oauth/token

  4. 成功交换后,使用访问令牌作为后续端点调用的"授权"标头的值.例如: curl -H 'Authorization: Bearer YOUR_ACCESS_TOKEN' 'https://api.uber.com/v1/products?latitude=37.7759792&longitude=-122.41823'