0

みんなG'day!

次のようなエラーが発生しました:

WARN/DefaultRequestDirector(22739): Authentication error: Unable to respond to any of
these challenges: {authsub=WWW-Authenticate: AuthSub
realm="https://www.google.com/accounts/AuthSubRequest" allowed-
scopes="https://www.googleapis.com/auth/userinfo.email,
https://www.googleapis.com/auth/userinfo.profile,
https://www.googleapis.com/auth/userinfo.id"}

それは私が接続を取得したいときに起こりました:

AccessGrant accessGrant = new AccessGrant(accessToken);
Connection<Google> connection = connectionFactory.createConnection(accessGrant);

その結果、Auth401として例外をキャッチします。

その問題の前に誰かがいましたか?

4

2 に答える 2

0

OAuth2認証を使用する必要があるときに、古いAuthSub認証を使用しているようです。サンプルアプリケーションをご覧になることをお勧めします。具体的には、 SocialConfigで、サインインに使用されるProviderSignInControllerの作成方法を参照してください。

于 2012-07-30T05:29:17.737 に答える
0

私はそれが起こった理由を見つけました。問題は範囲内にありました。https://www.googleapis.com/auth/plus.me スコープのみを設定しました。接続を作成するには十分ではありませんでした。

その結果、次のメッセージが表示されました。

WARN/DefaultRequestDirector(22739): Authentication error: Unable to respond to any of
these challenges: {authsub=WWW-Authenticate: AuthSub
realm="https://www.google.com/accounts/AuthSubRequest" allowed-
scopes="https://www.googleapis.com/auth/userinfo.email,
https://www.googleapis.com/auth/userinfo.profile,
https://www.googleapis.com/auth/userinfo.id"}

ご覧のとおり、google oauth2はhttps://www.googleapis.com/auth/userinfo.email、https://www.googleapis.com/auth/userinfo.profile、https://www.googleapis.com/を要求しますauth/userinfo.idスコープ。

このスコープを追加した後、「invalid_scope」のような新しいエラーが発生しました。

接続URLに問題がありました。

接続URLを次のように作成しました:

connectionFactory.getOAuthOperations().buildAuthorizeUrl(GrantType.AUTHORIZATION_CODE, params);

ここで、params:

OAuth2Parameters params = new OAuth2Parameters();
params.setRedirectUri(redirectUri);
params.setScope("https://www.googleapis.com/auth/userinfo.email+" + "https://www.googleapis.com/auth/userinfo.profile+" + "https://www.googleapis.com/auth/userinfo.id+" + 
"https://www.googleapis.com/auth/plus.me");

この場合、記号「+」は別の記号にデコードされ、Googleoauth2apiはスコープセットを認識できませんでした。

このソリューションが将来誰かに役立つことを願っています。

于 2012-08-24T02:30:26.907 に答える