1

最初の投稿なので、書式設定の問題で申し訳ありません。

oauth を使用してセカンダリ ドメイン ユーザーのドキュメントをダウンロードしようとすると、com.google.gdata.util.AuthenticationException: Unauthorized エラーが発生します。次のようなフィード呼び出しを使用して、ユーザー ドキュメントを取得できます。

String docUrl = "https://docs.google.com/feeds/" + DOC_OWNER + "/private/full/" + DOC_ID + "?xoauth_requestor_id="+ PRIMARY_ADMIN_EMAIL
DocumentListEntry googleDoc = docServ.getEntry(new URL(docUrl), DocumentListEntry.class);
String exportUrl = ((MediaContent) googleDoc.getContent()).getUri().toString();
exportString = ((MediaContent) googleDoc.getContent()).getUri().split("&xoauth_requestor_id=")[0];
exportString + EXPORT_TYPE // add export type

しかし、次のようなドキュメントをダウンロードしようとすると:

MediaContent mc = new MediaContent();
mc.setUri(exportUrl);
String mcUrl = mc.getUri() + "&xoauth_requestor_id=" + DOC_OWNER;
MediaSource ms = docServ.getMedia(mc);

これにより、認証例外がスローされます。プライマリ ドメイン管理者のリクエスタ ID を交換しようとしましたが、成功しませんでした。また、プライマリ ドメイン管理者のユーザー クレデンシャルを使用してみましたが、サービス禁止例外がスローされます。誰にも提案はありますか?

4

1 に答える 1

0

デフォルトでは、ドメインの OAuth キー/シークレットはセカンダリ ドメインにアクセスできません。キー (プライマリ ドメイン) と Docs API スコープを手動で入力する必要があります。

https://docs.google.com/feeds/,https://docs.googleusercontent.com/,https://spreadsheets.google.com/feeds/

で:

https://www.google.com/a/cpanel/YOUR-DOMAIN-HERE/ManageOauthClients

セカンダリ ドメイン アカウントで動作するようにします。

于 2012-11-23T22:18:34.323 に答える