¿Cómo podemos agregar un archivo a la lista de archivos de un usuario a través del SDK?

Tenemos problemas en los que a veces no se devuelve un archivo al que un usuario puede acceder cuando el usuario emite un archivo.files.list. Esto puede suceder de muchas maneras. Por ejemplo, los nuevos miembros de un grupo de Google no verán los archivos compartidos anteriormente, como se describe enesta pregunta. Por otra parte, segúnDocumentación de Google existen otros límites para compartir, lo que puede evitar que los archivos compartidos aparezcan en la vista "Compartidos conmigo". Finalmente, un usuario puede emitir unfiles.delete en un archivo que ella no posee, y el archivo desaparecerá defiles.list pero seguirá existiendo.

¿Qué puede hacer un usuario?solo a través del SDK para causar un archivo que puede acceder a través defiles.get para aparecer en la lista de archivos recuperados víafiles.list? Estamos utilizando una cuenta de servicio que se hace pasar por los usuarios; el usuario nunca se autentica en Google a través de un navegador. Desafortunadamente, un enlace en un correo electrónico en el que el usuario debe hacer clic no funcionará para nosotros. El acceso al archivo a través de la interfaz de usuario de Google Drive tiene el efecto deseado, pero el análogofiles.get la llamada no lo hace.

La API de Google Calendar expone explícitamente unaCalendarList interfaz donde un usuario puede emitir unainsert para agregar un calendario existente a su lista. El SDK de Google Drive parece un híbridoFiles/FilesList interfaz con algunas de las funcionalidades que faltan (nada comoFilesList.insert) y algunas de las funcionalidades combinadas (emitiendo undelete como un no propietario actúa comoFilesList.delete Pero emitiéndolo como el dueño actúa comoFiles.delete).

Si no podemos gestionar la lista de archivos del usuario mediante programación, no es útil para nuestro servicio. Podríamos ignorar elfiles.list llamar por completo y simplemente empezar a realizar recursivamentechildren.list consultas en todas las carpetas compartidas, pero esto es increíblemente caro (a menos que alguien sepa cómo emitir una única consulta que devuelva todas lasFiles recursos en una carpeta y no solo los ID de esos recursos).

Cualquier ayuda sería apreciada. Hemos estado probando de muchas maneras diferentes y nos hemos sentido frustrados a cada paso. ¡Gracias!

Respuestas a la pregunta(0)

Su respuesta a la pregunta