如何从 UBER 的授权中获取代码 api

How to get code from UBER's authorise api

我正在尝试使用下面的 url 从 json 获取代码 使用 postman.but 可以获取 json 中的代码。

uber login link

此外,当我在浏览器中点击此 url 时,我将使用查询参数重定向到我的本地主机 url,我可以在其中获取代码。

步骤 1。使用您的客户端 ID、客户端密码、范围和重定向回调 URI 创建一个 OAuth2Credentials 对象以捕获用户的授权代码。

SessionConfiguration config = new SessionConfiguration.Builder()
.setClientId("YOUR_CLIENT_ID")
.setClientSecret("YOUR_CLIENT_SECRET")
.setScopes(yourScopes)
.setRedirectUri(redirectUri)
.build();

OAuth2Credentials credentials = new OAuth2Credentials.Builder()
.setSessionConfiguration(config)
.build()

步骤 2。从 OAuth2Credentials 对象将用户导航到授权 URL。

String authorizationUrl = credentials.getAuthorizationUrl();

步骤 3。用户批准请求后,您将获得授权代码。创建一个凭据对象来存储授权码和用户 ID。

Credential credential = credentials.authenticate(authorizationCode, userId);

我对第 2 步和第 3 步感到困惑。

- 我应该如何处理第 2 步中的 authorizationUrl?。 - 如何使用 authorizationUrl 在第 3 步中获取 authorizationCode?.

您应该遵循 developer docs 中记录的 OAuth2.0 流程。基本上,您配置 OAuth2.0 设置。您的设置将生成特定的身份验证 URL(包括 client_id 和请求的范围)。这个 URL 需要在 webview 中打开。您的用户必须使用他们的 Uber 帐户登录并批准或拒绝对范围的访问。这是您在第 2 步中获得的 URL。

如果用户在 auth webview 中点击 approve,配置的重定向 URI 将通过 Uber 服务器调用。此回调将有一个 URL 参数用于 authorizationCode。