0

次のコマンドを使用して、Google アカウントの 1 つ (dustin.wehr) が所有するリアルタイム ファイルへのアクセス許可を 2 番目の Google アカウント (d.dawg.fresh) に付与します。

gapi.client.load('drive', 'v3').then(function() {

        gapi.client.drive.permissions.create({
            fileId: fileid,
            type: 'user',
            role: 'writer',
            emailAddress: email
        });

これにより、新しく共有された 0 バイトのショートカット ファイルに関する電子メール通知が届きます。これは、d.dawg.fresh としてログインすると、Google ドライブの Web アプリケーションで確認できます。ここで、ショートカット ファイルと同じファイル ID があることを確認します。私のdustin.wehrドライブアカウントで。

ただし、d.dawg.fresh として認証し、そのファイル ID を使用して (realtime-client-utils.js 経由で) ファイルをロードしようとすると、次のようになります。

ドライブ リアルタイム API エラー: not_found: ファイルが見つかりません。

全体を通して同じクライアント ID とアプリ ID を使用します。

d.dawg.fresh にアクセス許可を与える前に、d.dawg.fresh にロードさせようとすると、予想されるエラーが発生します。

ドライブ リアルタイム API エラー: 禁止: ファイルへのアクセスが拒否されました。

gapi.client.drive.permissions.getまたはのいずれかを使用して、いずれかのアカウントから認証しようとするとgapi.client.drive.permissions.list、クロージャ コンパイラ コードから作成されたように見える、理解できないオブジェクトが返されます。それらの機能は以前は便利だったのを覚えているようです。

2 つのアカウントのいずれかからログインしてhttps://developers.google.com/drive/v3/reference/permissions/listで「この API を試す」を使用すると、まったく同じ応答が得られます。ライター用と所有者用の 2 つのアクセス許可。

それは良くなります!2 つのユーザー アカウントの役割を入れ替えると、上記のプロセスが機能することがわかりました。つまり、d.dawg.fresh でファイルを作成し、dustin.wehr にアクセス許可を与えます。その後、どちらのアカウントからでもファイルを読み込むことができ、共同編集は思い通りに機能します。

この時点で、シークレット ウィンドウの使用が不十分なために問題が発生しないように、2 つのアカウントに対して 2 台の異なるコンピューターから作業しています。

何か案は?

4

0 に答える 0