【问题标题】:Uber Rides JAVA SDK : Unable to request tokenUber Rides JAVA SDK:无法请求令牌
【发布时间】:2019-03-15 00:38:30
【问题描述】:

我不熟悉在 Java 中使用 API。我需要为我的项目访问 Uber API,并且我正在使用来自 - https://github.com/uber/rides-java-sdk

的 Uber Java SDK

我正在按照他们的步骤操作,但不知何故在验证凭据时出现错误。以下是我的步骤:

1) 创建 OAuth2Credentials 对象

SessionConfiguration config = new SessionConfiguration.Builder()
                .setClientId(CLIENT_ID)
                .setClientSecret(MY_SECRET)
                .setRedirectUri(REDIRECT_URL)
                .setScopes(Arrays.asList(Scope.HISTORY, Scope.PROFILE, Scope.PLACES))
                .build();

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

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

String authorizationUrl = credentials.getAuthorizationUrl();

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

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

** 我正在使用“authorizationCode”返回到我的 REDIRECT_URL ** 我不确定用户 ID 应该是什么??

但实际上代码在第 3 步失败并出现错误:

HTTP ERROR 500

Problem accessing /hello. Reason:

    Unable to request token.
Caused by:

com.uber.sdk.rides.auth.AuthException: Unable to request token.
    at com.uber.sdk.rides.auth.OAuth2Credentials.authenticate(OAuth2Credentials.java:279)
    at com.c2p.HelloAppEngine.doGet(HelloAppEngine.java:183)

*** 请帮忙:

1) 如何解决上述错误 - 我做错了什么吗? 2)我的步骤正确吗? 3) UserID 应该是什么,我在哪里可以得到它?

【问题讨论】:

  • userId 应该是一个字符串,用作将凭据存储在底层 DataStore 中的密钥。更多细节可以在这里找到:github.com/uber/rides-java-sdk/blob/master/sdk/src/main/java/…。查看错误(第 279 行),它表明它是由 IOException 引发的。因此,在我看来,您的问题与 userId 无关。您能否分享您的整个课程/方法以获取更多背景信息?

标签: java google-app-engine uber-api


【解决方案1】:

为了获得用户 uuid,您需要获取您获得的访问令牌并向https://developer.uber.com/docs/rides/api/v1-me 发出请求。

UserProfile userProfile = uberRidesService.getUserProfile().execute().body();

查看 sdk 中包含的 java 示例应用程序:https://github.com/uber/rides-java-sdk/blob/master/samples/servlet-sample/src/main/java/com/uber/sdk/rides/samples/servlet/SampleServlet.java

【讨论】:

    猜你喜欢
    • 2016-11-08
    • 1970-01-01
    • 1970-01-01
    • 2016-02-09
    • 2017-03-04
    • 1970-01-01
    • 2014-10-16
    • 1970-01-01
    • 2016-06-22
    相关资源
    最近更新 更多