我试图制作一个iOS,它将使用Uber API来执行诸如获取游乐设施等事情。我正在尝试在iPhone上实现OAuth 2.0,而不使用任何服务器端帮助。优步API iOS OAuth 2.0
这可能吗?有没有人做过这个?
这里有一些参考:
尤伯杯认证:https://developer.uber.com/v1/auth/
的OAuth 2.0:https://aaronparecki.com/articles/2012/07/29/1/oauth2-simplified
我试图制作一个iOS,它将使用Uber API来执行诸如获取游乐设施等事情。我正在尝试在iPhone上实现OAuth 2.0,而不使用任何服务器端帮助。优步API iOS OAuth 2.0
这可能吗?有没有人做过这个?
这里有一些参考:
尤伯杯认证:https://developer.uber.com/v1/auth/
的OAuth 2.0:https://aaronparecki.com/articles/2012/07/29/1/oauth2-simplified
是的,这是可能的。我能够使用Uber API为我的应用程序配置OAuth2。以下是一步一步的指示:
response_type=code
为了让用户授权您的应用程序。redirect_uri
(您可以指定任何redirect_uri,包括用于测试目的的localhost:xxxx等),以便为您提供一次性使用并且有效期为10分钟的认证代码。实现回调以检索此授权码。使用来自步骤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
成功交换后,使用访问令牌作为后续端点调用的“授权”标头的值。例如: curl -H 'Authorization: Bearer YOUR_ACCESS_TOKEN' 'https://api.uber.com/v1/products?latitude=37.7759792&longitude=-122.41823'
你能为此提供swift代码吗?我在我的应用程序 – 2015-04-23 11:17:54
实施这个快速点击这里http://stackoverflow.com/questions/29895238/uber-invalid-oauth-2-0-credentials-provided-uber-authentication-in-ios-swift – 2015-05-18 11:54:15
请提供回调代码为Android – gStephin 2016-10-20 05:18:53
它应该是可能的,OAuth 2.0允许。也许你可以从UberKit获得一些启发:https://github.com/sachinkesiraju/UberKit。它使用集成的WebView进行用户登录。至于重定向URI,您可能需要在您的应用程序中创建特定的重定向URI,并将其用作Uber应用程序配置中的指定重定向URI(例如:myuberapp:// oauth)。 – Romain 2015-04-05 19:41:07
谢谢,我会尝试。 – Gary 2015-04-06 13:41:37