Nuestros mejores desarrolladores agotaron sus depósitos de café, en su búsqueda día y noche por la resolución, hasta que Mariana halló la respuesta en Bitbucket y en este momento la comparte aquí.
Solución:
Las carpetas de Google Drive se pueden incrustar y mostrar en list
y grid
puntos de vista:
Vista de la lista
Vista en cuadrícula
q: ¿Qué es una ID de carpeta (FOLDER-ID) y cómo puedo obtenerla?
UN: Vaya a Google Drive >> abra la carpeta >> mire su URL en la barra de direcciones de su navegador. Por ejemplo:
URL de la carpeta: https://drive.google.com/drive/folders/0B1iqp0kGPjWsNDg5NWFlZjEtN2IwZC00NmZiLWE3MjktYTE2ZjZjNTZiMDY2
ID de carpeta:
0B1iqp0kGPjWsNDg5NWFlZjEtN2IwZC00NmZiLWE3MjktYTE2ZjZjNTZiMDY2
Advertencia con carpetas que requieren permiso
Esta técnica funciona mejor para carpetas con acceso público. Las carpetas que se comparten solo con ciertas cuentas de Google causarán problemas cuando las incruste de esta manera. En el momento de esta edición, aparece un mensaje “Necesita permiso”, con algunos botones para ayudarlo a “Solicitar acceso” o “Cambiar de cuenta” (o posiblemente iniciar sesión en una cuenta de Google). El Javascript en estos botones no funciona correctamente dentro de un IFRAME
en cromo.
Lea más en https://productforums.google.com/forum/#!msg/drive/GpVgCobPL2Y/_Xt7sMc1WzoJ
Incrustar un directorio de Google Drive en un IFRAME
Las carpetas de Google Drive se pueden incrustar y mostrar en list
y grid
vistas (en las que todo lo que puede hacer es hacer clic en un archivo o carpeta para abrirlo en una nueva pestaña). Para hacerlo, simplemente reemplace ID DE CARPETA con el tuyo en:
Vista de la lista
o sin especificar un modo, ya que el modo de lista es el predeterminado:
Vista en cuadrícula
Obtención de su ID de carpeta
El id es el hash (galimatías alfanuméricas) después folders/
en la URL de la carpeta. Puede ver la URL en la barra de direcciones de su navegador cuando abre la carpeta de Drive. Por ejemplo, en:
https://drive.google.com/drive/folders/0B1iqp0kGPjWsNDg5NWFlZjEtN2IwZC00NmZiLWE3MjktYTE2ZjZjNTZiMDY2
La identificación de la carpeta es 0B1iqp0kGPjWsNDg5NWFlZjEtN2IwZC00NmZiLWE3MjktYTE2ZjZjNTZiMDY2
.
Carpeta con dominio de G Suite/Google Apps
Si su carpeta es parte de un dominio de Google Apps, puede agregar el dominio a la URL para aliviar los problemas de permisos (detallados más adelante):
solo reemplaza MI.DOMINIO.COM y ID DE CARPETA contigo mismo.
Advertencia con carpetas que requieren permiso
Esta técnica funciona mejor para carpetas con acceso público. Las carpetas que se comparten solo con ciertas cuentas de Google pueden causar problemas cuando las incrusta de esta manera, según las cuentas de Google que estén activas en el navegador del usuario:
- Si el usuario no ha iniciado sesión en ninguna cuenta de Google, entonces ninguna cosa aparece en el marco.
- Si el usuario ha iniciado sesión en una cuenta sin autorización para acceder a la carpeta, el marco contendrá el mensaje necesitas permisocon unos botones para Solicitar acceso o Cambiar cuentaspero si hace clic en este último, el marco se queda en blanco.
- Si el usuario inicia sesión en una cuenta sin los permisos adecuados y luego agrega la cuenta autorizada, al cargar la unidad integrada, Google recurrirá a la primera cuenta activa y el usuario verá necesitas permisoa no ser que…
- Si la URL contiene un dominio de Google Suite y el usuario ha iniciado sesión en la cuenta de ese dominio, la vista incrustada funcionará. incluso si el usuario inició sesión en otra cuenta primero.
Los marcos en blanco se deben a que Google prohíbe incrustar su página de inicio de sesión en un IFRAME (presumiblemente para evitar el robo de cuentas), a través de la X-Frame-Options
encabezado, que si se establece en SAMEORIGIN
hará que cualquier navegador que se comporte bien se niegue a cargar la página si no está en el mismo dominio (vg drive.google.com
). Puede ver esto en la consola de desarrollador de su navegador.
TL;DR
Para obtener una vista de lista o cuadrícula de una carpeta de Drive (en la que todo lo que puede hacer es hacer clic en un archivo o carpeta para abrirlo en una nueva pestaña), use:
o alternativamente, para Google Suite/Apps Drive:
Reemplazar MI.DOMINIO.COM y ID DE CARPETA contigo mismo; retirar #grid
para obtener una lista detallada de archivos.
Para carpetas privadas, haga que sus usuarios inicien sesión en la cuenta correcta antes de cargar la página con la carpeta incrustada; si la carpeta está en un dominio de Google Apps, puede agregar el dominio a la URL. De lo contrario, deben iniciar sesión en la cuenta autorizada antes que cualquier otra.
(esta respuesta es una edición de Mori, pero fue rechazada porque cambió su intenciónde algun modo)
Para aplicaciones comerciales/Gsuite o como las llamen, puede especificar el dominio (tuvo un problema con 500 errores con la respuesta original cuando inició sesión en varias cuentas de Google).