Вопрос по html, google-drive-sdk, embed – Как встроить папку Google Drive в веб-сайт

45

У меня есть папка на Google Диске, которую я хотел бы добавить на мой сайт. Я не могу найти код для встраивания или что-либо, задокументированное в справочных статьях Google Диска.

Ваш Ответ

3   ответа
2

вы можете указать домен (возникла проблема с 500 ошибками с исходным ответом при входе в несколько учетных записей Google).

<iframe 
  src="https://drive.google.com/a/YOUR_COMPANY_DOMAIN/embeddedfolderview?id=FOLDER-ID" 
  style="width:100%; height:600px; border:0;"
>
</iframe>
8
Встраивание каталога Google Диска в IFRAME

list а такжеgrid представления (в которых все, что вы можете сделать, это щелкнуть файл или папку, чтобы открыть его на новой вкладке). Для этого просто заменитеПАПКА-ID с вашим собственным в:

Посмотреть список

<iframe src="https://drive.google.com/embeddedfolderview?id=FOLDER-ID#list" style="width:100%; height:600px; border:0;"></iframe>

или без указания режима, так как режим списка по умолчанию:

<iframe src="https://drive.google.com/embeddedfolderview?id=FOLDER-ID" style="width:100%; height:600px; border:0;"></iframe>

Вид сетки

<iframe src="https://drive.google.com/embeddedfolderview?id=FOLDER-ID#grid" style="width:100%; height:600px; border:0;"></iframe>
Получение идентификатора вашей папки

Идентификатор - это хэш (буквенно-цифровой тарабарщины) послеfolders/ в URL папки. Вы можете увидеть URL в адресной строке вашего браузера, когда откроете папку Drive. Например, в:

https://drive.google.com/drive/folders/0B1iqp0kGPjWsNDg5NWFlZjEtN2IwZC00NmZiLWE3MjktYTE2ZjZjNTZiMDY2 

Идентификатор папки0B1iqp0kGPjWsNDg5NWFlZjEtN2IwZC00NmZiLWE3MjktYTE2ZjZjNTZiMDY2.

Папка с G Suite / доменом Служб Google

Если ваша папка является частью домена Служб Google, вы можете добавить домен к URL-адресу, чтобы устранить проблемы с разрешениями (подробнее см. Ниже):

<iframe src="https://drive.google.com/a/MY.DOMAIN.COM/embeddedfolderview?id=FOLDER-ID#grid" style="width:100%; height:600px; border:0;"></iframe>

Просто замениMY.DOMAIN.COM а такжеПАПКА-ID с вашим собственным.

Будьте осторожны с папками, требующими разрешения

Этот метод лучше всего подходит для папок с открытым доступом. Папки, которые используются только определенными учетными записями Google, могут создавать проблемы при их встраивании, в зависимости от того, какие учетные записи Google активны в браузере пользователя:

Если пользователь не вошел в какую-либо учетную запись Google, тоничего появляется в кадре.Если пользователь вошел в учетную запись без авторизации для доступа к папке, фрейм будет содержать сообщениевам нужно разрешениес некоторыми кнопкамиЗапрос доступа или жеСменить аккаунт, но если вы нажмете на эту последнюю, рамка исчезнет.Если пользователь входит в учетную запись без надлежащих разрешений, а затем добавляет авторизованную учетную запись, при загрузке встроенного диска Google будет прибегать к первой активной учетной записи, и пользователь увидитвам нужно разрешениеЕсли только ...Если URL-адрес содержит домен Google Suite и пользователь вошел в учетную запись этого домена, будет работать встроенное представление,даже если пользователь сначала вошел в другую учетную запись.

Пустые рамки заключаются в том, что Google запрещает встраивать свою страницу входа в IFRAME (предположительно, для предотвращения кражи учетной записи) черезX-Frame-Options заголовок, который, если установленоSAMEORIGIN приведет к тому, что любой браузер с хорошим поведением откажется загружать страницу, если она не находится в том же домене (например,drive.google.com). Вы можете увидеть это в консоли разработчика вашего браузера.

TL; DR

Чтобы получить список или сетку для папки Drive (в которой все, что вы можете сделать, это щелкнуть файл или папку, чтобы открыть его на новой вкладке), используйте:

<iframe src="https://drive.google.com/embeddedfolderview?id=FOLDER-ID#grid" style="width:100%; height:600px; border:0;"></iframe>

или, альтернативно, для Google Suite / Apps Drive:

<iframe src="https://drive.google.com/a/MY.DOMAIN.COM/embeddedfolderview?id=FOLDER-ID#grid" style="width:100%; height:600px; border:0;"></iframe>

замещатьMY.DOMAIN.COM а такжеПАПКА-ID с вашим собственным; Удалить#grid чтобы получить подробный список файлов.

В случае личных папок пользователи должны войти в правильную учетную запись перед загрузкой страницы со встроенной папкой; если папка находится в домене Служб Google, вы можете добавить домен к URL-адресу. Иначе, они должны войти в авторизованный аккаунт перед любым другим.

(этот ответ является правкой Мори, но он был отклонен, так как изменил егонамерениекак-то)

68

Папки Google Диска могут быть встроены и отображены вlist а такжеgrid Просмотры:

Посмотреть список
<iframe src="https://drive.google.com/embeddedfolderview?id=FOLDER-ID#list" style="width:100%; height:600px; border:0;"></iframe>


Вид сетки
<iframe src="https://drive.google.com/embeddedfolderview?id=FOLDER-ID#grid" style="width:100%; height:600px; border:0;"></iframe>



Q: Что такое идентификатор папки (FOLDER-ID) и как его получить?

A: Перейдите на Google Drive >> откройте папку >> посмотрите ее URL в адресной строке вашего браузера. Например:

URL папки: https://drive.google.com/drive/folders/0B1iqp0kGPjWsNDg5NWFlZjEtN2IwZC00NmZiLWE3MjktYTE2ZjZjNTZiMDY2

ID папки:
0B1iqp0kGPjWsNDg5NWFlZjEtN2IwZC00NmZiLWE3MjktYTE2ZjZjNTZiMDY2

Будьте осторожны с папками, требующими разрешения

Этот метод лучше всего подходит для папок с открытым доступом. Папки, которые используются только определенными учетными записями Google, могут вызвать проблемы при их встраивании. Во время этого редактирования появляется сообщение «Вам нужно разрешение» с некоторыми кнопками, которые помогут вам «Запросить доступ» или «Переключить учетные записи» (или, возможно, войдите в учетную запись Google). Javascript в этих кнопках не работает должным образом внутриIFRAME в хроме.

Узнайте больше наhttps://productforums.google.com/forum/#!msg/drive/GpVgCobPL2Y/_Xt7sMc1WzoJ

Это решение работает для меня уже несколько месяцев. Это правда, что вошедший в систему пользователь должен иметь доступ к папке, которая должна быть в списке. Victoria
Я только что попробовал это сильно. В моих фреймах вообще ничего не отображается. Документы Google всегда казались такими близкими, чтобы быть намного лучше, чем сейчас. Вздох. Даже если бы мне пришлось заплатить немного за URL, который бы работал, я бы обдумал это. James T Snell
Это хорошо работает в последних версиях Firefox и Chrome. Незначительное беспокойство вызывает то, что все ссылки на папки / документы открываются в отдельном окне. Есть ли способ просматривать папки на диске в одном и том же фрейме? Есть ли способ, которым мы могли бы использовать <base target = "_ parent" />? Anuruddha
Это хорошо работает - есть ли способ получить только URL? Richard Griffiths
@ Док я раньше получал бланкIFRAME когда у меня не было разрешения. Я думаю, что теперь лучше, так как появляется сообщение, говорящеевам нужно разрешение, Встроенный вид папки также возвращает некоторые кнопки, чтобы помочь вамЗапрос доступа или жеСменить аккаунт, К сожалению, эти кнопки не работают внутриIFRAME (по крайней мере, не с версией Chrome, которую я использую). Если ваш браузер позволяет открывать фрейм в другой вкладке, вы можете обойти это. Если вам нужно переключить учетные записи, чтобы получить доступ, исходный встроенный доступ не будет переключаться, но вы можете использовать вкладку. Fuhrmanator

Похожие вопросы