0

私は GWTP プロジェクトを開発しています。以下のシナリオは、ローカル開発モードで正常にテストされています。

  1. OpenID と OAuth による認証と認可を受ける
  2. GoogleOAuthParameters オブジェクトを HttpSession に保存します。
  3. 別のアクション ハンドラは、セッションに保存されている GoogleOAuthParameters を再利用して、SpreadsheetService オブジェクトを取得します。
  4. SpreadsheetService を使用して、GDoc でスプレッドシートを操作します。

ただし、App Engine にデプロイされると、GDoc から何も読み取れず、エラーや警告も表示されず、返されるリストは常に空です。

spreadsheetService = new SpreadsheetService("test");
GoogleOAuthParameters oauthParameters = (GoogleOAuthParameters)sessionProvider.get().getAttribute(HttpSessionProvider.PARAM_OAUTH_PARAMETERS);
spreadsheetService.setOAuthCredentials(oauthParameters, new OAuthHmacSha1Signer());
oauthParameters.setScope(SCOPE_SPREADSHEET);

SpreadsheetService を初期化するときに、以下のようにユーザー名/パスワードを明確に使用すると、GDoc からデータを取得できます。

SpreadsheetService sService = new SpreadsheetService("test");
sService.setUserCredentials("username", "password");

App Engine SDK 1.6.6 と gdata-spreadsheet-3.0 を使用しています。私が何か間違ったことをしたかどうかアドバイスしてください。ありがとう!

4

2 に答える 2

-2

ドキュメントには、サポートされているすべてのメカニズムで認証を実行する方法を示す Java の完全なサンプルがあります。以下で説明されている OAuth 2.0 を使用することをお勧めします。

https://developers.google.com/google-apps/spreadsheets/#performing_oauth_20

于 2012-06-03T18:55:12.453 に答える