Ошибка not_found после успешного предоставления разрешений (API Google Realtime)
Я предоставляю разрешения для файла в реальном времени, принадлежащего одной из моих учетных записей Google (dustin.wehr), второй учетной записи 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-байтовом файле ярлыка, который я затем вижу в веб-приложении google drive при входе в систему как d.dawg.fresh, где я проверяю, что он имеет тот же fileid, что и файл ярлыка в моем аккаунте drivein.wehr.
Однако, когда я аутентифицируюсь как d.dawg.fresh и пытаюсь загрузить файл, используя этот fileid (через realtime-client-utils.js), я получаю:
Ошибка Drive Realtime API: not_found: Файл не найден.
Я использую один и тот же идентификатор клиента и идентификатор приложения повсюду.
Перед тем, как дать разрешения d.dawg.fresh, я получаю ожидаемую ошибку при попытке загрузить d.dawg.fresh:
Ошибка Drive Realtime API: запрещено: доступ к файлу запрещен.
Когда я пытаюсь использовать любой из gapi.client.drive.permissions.get
или же gapi.client.drive.permissions.list
аутентифицируясь с любой учетной записи, я просто получаю непонятные объекты, которые выглядят так, как будто они были созданы из кода компилятора замыкания. Кажется, я помню, что эти функции были полезны раньше.
Когда я использую "Попробуйте этот API" по адресу https://developers.google.com/drive/v3/reference/permissions/list вошедшего в систему с любого из двух аккаунтов, я получаю абсолютно одинаковый ответ; два разрешения, одно для писателя и одно для владельца.
Становится лучше! Я обнаружил, что описанный выше процесс работает, если я переключаю роли двух учетных записей пользователей, то есть я создаю файл с помощью d.dawg.fresh и даю разрешения для dustin.wehr. Затем я могу загрузить файл из любой учетной записи, и совместное редактирование работает точно так, как я хочу.
На данный момент я работаю с двух разных компьютеров для двух учетных записей, чтобы убедиться, что нет какой-либо проблемы, вызванной недостаточным использованием окна в режиме инкогнито.
Есть идеи?