3

私のコードは次のとおりです: (機密情報は削除されました)

SpreadsheetService service = new SpreadsheetService("MySpreadsheetIntegration-v1");
// service.setUserCredentials(<email>, <pw>);

GoogleOAuthParameters oauthParameters = new GoogleOAuthParameters();
oauthParameters.setOAuthConsumerKey("xxx.yyy.no");
oauthParameters.setOAuthConsumerSecret("XXX");
oauthParameters.setOAuthToken("YYYY");
oauthParameters.setOAuthTokenSecret("ZZZZ");
oauthParameters.setScope("https://docs.google.com/feeds/ https://docs.googleusercontent.com/ https://spreadsheets.google.com/feeds/");

service.setOAuthCredentials(oauthParameters, new OAuthHmacSha1Signer());

// Define the URL to request. This should never change.
URL SPREADSHEET_FEED_URL = new URL("https://spreadsheets.google.com/feeds/spreadsheets/private/full");

// Make a request to the API and get all spreadsheets.
SpreadsheetFeed feed = service.getFeed(SPREADSHEET_FEED_URL, SpreadsheetFeed.class);
List<SpreadsheetEntry> spreadsheets = feed.getEntries();

// Iterate through all of the spreadsheets returned
for (SpreadsheetEntry spreadsheet : spreadsheets) {
// Print the title of this spreadsheet to the screen
System.out.println(spreadsheet.getTitle().getPlainText());
} 

問題:

WARNING: Authentication error: Unable to respond to any of these challenges: {authsub=WWW-Authenticate: AuthSub realm="https://www.google.com/accounts//AuthSubRequest"}

com.google.gdata.util.AuthenticationException: Token invalid - AuthSub token has wrong scope

clientLogin メソッド (setUserCredentials(, )) を試してみましたが、うまくいきました。また、OAuthConsumerKey、OAuthConsumerSecret、OAuthToken、および OAuthTokenSecret が機能することも知っています。これらを使用して別のフィード (picasa) にアクセスしているためです。上記の 3 つのスコープのさまざまな組み合わせを設定しようとしましたが、うまくいきませんでした。私はこれこれを見てきましたが、やはり運が悪いです。

どんな助けでも大歓迎です。

4

1 に答える 1

0

この回答を見てください。

次のディレクトリを削除してみてください。

$HOME/.credentials

プログラムを再度実行すると、コールバックが行われ、Google コンソールでアプリケーションにアクセス許可を付与するように求められ、適切に動作するようになります。

于 2015-08-20T20:34:05.260 に答える