3

サービス アカウントを介して Google ドキュメント/ドライブ SDK にアクセスする方法について説明を求めています。API コンソールですべての設定を行い、JWT プロセスを介してアクセス トークンを正常に生成できます。実際に、SDK または Docs List API を駆動するリクエストを発行して、ドキュメントのリストを取得できます。ただし、ドキュメントのリストは常に空です。Google ドライブにすべてのドキュメントが表示されることを期待していました。サービス アカウントが提供するものを完全に理解していないことは明らかです。サービス アカウントを介してドキュメントをアップロードすると、ドキュメントは正しく表示されますが、Google ドライブには表示されません。サービス アカウントがまったく別のブラック ボックスであるかのようです。

サービス アカウントを使用する理由は、さまざまなクライアントの Google ドキュメント アカウントにドキュメントをアップロードする必要があるサービスを実行しているためです。UI のやり取りがまったくないため、OAuth ダンスを実行する必要はありません。これはGoogleドキュメントで可能ですか?私は、彼らが私の client_email と証明書と秘密鍵を送信するだけで、そのアカウントにドキュメントをアップロードできることを望んでいました。

ご検討いただきありがとうございます

-マーシャル

4

1 に答える 1

9

もう答えが必要かどうかはわかりませんが、同じ問題に直面したばかりで、この投稿に来ました。私の場合に機能する解決策が1つ見つかったので、ここで全員と共有します。私の場合、GoogleDrive への唯一の統合ポイントはドキュメント リストです。サービス アカウントを最初に作成したときは、うまく機能しませんでした (常に空のリストが表示されるだけでした)。私はそれを修正するために何をしました:

  1. MyDrive UI https://drive.google.com/#my-driveに移動します
  2. 自分のウェブサイトで見たいドキュメントをすべてチェックした
  3. 上部のメニューで、[その他] -> [共有...] -> [共有...] をクリックします。
  4. 「ユーザーの追加」セクション (新しいウィンドウの「共有設定 (N 項目)」) で、サービス アカウントのメールを追加しました (形式は「XXXXXX@@developer.gserviceaccount.com」です)。
  5. ドキュメントのリストをもう一度実行すると、機能するようになりました。
于 2012-11-10T18:17:13.993 に答える