Compartir archivos en Google Drive con el público

Utilizando la interfaz web de Google Drive, me clic derecho en un archivo, seleccione «compartir», para llegar a «Configuración de uso Compartido.» Me puse el archivo para el «Público en la web de cualquier usuario de Internet puede encontrar y ver.»

Yo, a continuación, copia el enlace «compartir», en este caso es:
https://docs.google.com/open?id=0B6Cpn8NXwgGPbFBPMEh5VHc1cUU

Yo, a continuación, haga clic en «Hecho».

Si tengo que abrir otro navegador, no las cookies y trate de visitar el enlace, yo soy redirigido a la página de inicio de sesión de Google. Supuse que esta configuración significa que ninguna de autenticación sería necesario para ver el archivo. Es este el comportamiento que se espera?

Estoy tratando de hacer la misma cosa a través de la API, y no estoy obteniendo el resultado esperado, ya sea cuando la configuración de los permisos para el público, la configuración de ‘nadie’ como ‘lector’, y mediante la webContentLink valor para el archivo, como la publicada en la dirección URL. También en este caso, si voy a ver el enlace cuando no ha iniciado sesión en Google Apps, yo soy redirigido a la de inicio de sesión.

Que yo llamo el método siguiente para establecer los permisos de uso de este:

thePermission = insert_permission(userNickName,file['id'],"me","anyone","reader")

el método:

def insert_permission(userNickName,file_id, value, perm_type, role):

  credentials = get_stored_credentials(userNickName)
  service = CreateDrive(credentials)
  if service is None:
      return

  """Insert a new permission.

  Args:
    service: Drive API service instance.
    file_id: ID of the file to insert permission for.
    value: User or group e-mail address, domain name or None for 'default'
           type.
    perm_type: The value 'user', 'group', 'domain' or 'default'.
    role: The value 'owner', 'writer' or 'reader'.
  Returns:
    The inserted permission if successful, None otherwise.
  """
  new_permission = {
      'value': value,
      'type': perm_type,
      'role': role
  }
  try:
    return service.permissions().insert(
        fileId=file_id, body=new_permission).execute()
  except errors.HttpError, error:
     print 'An error occurred: %s' % error
  return None

Estoy preguntando acerca de la interfaz de usuario de la interfaz principalmente en esta pregunta, ya que parece más sencillo para saber si estoy esperando el resultado correcto uso de lo que Google ha hecho.

  • Es esta una programación de la pregunta?
  • Buena pregunta, Alex, que en realidad es relativa a la programación. He editado la pregunta para hacer que claro.
  • Definitivamente en el tema. Puedes mostrar la petición que realiza a la API para establecer el permiso?
  • Gracias Ali, he editado la pregunta para agregar el código que estoy utilizando para establecer permisos en la API.
InformationsquelleAutor user1501783 | 2012-08-08

1 Kommentar

  1. 2

    Finalmente encontré el problema en mi caso. Mi GAE aplicación fue el uso de «Federados de inicio de Sesión» para «Autenticación de Opciones», en lugar de «Cuentas de Google API». Todo lo trabajado con Google Drive API. Yo soy capaz de poner los archivos, borrar, mover, nombre de ella, con la Oauth de inicio de sesión. Pero de un tiempo a ahora, he sido incapaz de compartir archivos públicamente desde Google Drive que fueron creados a partir de mi GAE aplicación. Yo estaba siempre le solicite inicio de sesión si tratando de ver estos archivos sin estar conectado a Google Apps.

    Que decidí dejarlo Oauth de inicio de sesión para la GAE y vaya con las Cuentas de Google inicios de sesión desde todo el mundo el uso de la aplicación, ahora necesitamos de Google Drive. Después de cambiar el GAE aplicación en el panel de «Federados» a «Cuentas de Google», me complace compartir archivos con el público sin ningún tipo de inicio de sesión requerido.

    Así que parece que Google Drive no es aún plenamente apoyo «Federados de inicio de Sesión» en GAE, que no es nada de qué quejarse ya que «Federados» inicio de Sesión se muestra experimental.

    • pero aun siendo públicamente disponibles, nuestros archivos no se muestran en una búsqueda de google a la derecha? Me gustaría mostrar, hiciste para hacer eso? o tenemos que publicar que googleDrive enlace en alguna página web que describe los archivos, por lo que se pueden alcanzar a través de google search?

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea