|
|
|
|
- Posibles casos de error:
- Requisitos previos para la autenticación OAuth 2.0
- Autenticación OAuth 2.0
- Persistencia de la conexión
- Sintaxis compatible hasta abril de 2015 (puede utilizarse con versiones anteriores a la versión 20)
Le permite autenticarse en un servidor de Google.. Esta función se ejecuta automáticamente cuando se ejecuta una función Gglxxx. Observaciones: - Le recomendamos utilizar la función GglConnect (sintaxis 2) para agrupar las solicitudes de autorización realizadas por Google.
- La desconexión se realiza automáticamente al cerrar la aplicación.
Advertencia
A partir de la versión 20, esta característica evoluciona. De hecho, el modo de autenticación junto al servidor de Google utilizaba el "ClientLogin" API en las versiones anteriores.. Esta API ya no será accesible a partir de abril de 2015.. Sólo estará disponible el modo de autenticación "OAuth 2.0".. Este modo de autenticación requiere: - la declaración de la aplicación en la consola de Google,
- el uso de nuevas propiedades en el gglConnection Variable.
gglConnect evoluciona para proponer el modo de autenticación "OAuth 2.0" en la versión 20.
// CAUTION: FROM VERSION 20, THE GGLCONNECTION TYPE CHANGES // Connection by using the "OAuth 2.0" authentication mode Cnt is gglConnection Cnt..Email = "email_final_user@gmail.com" Cnt..ClientID = "387756281032-qffa6dajjd5348iqhi558dkd98xxxxxx.apps.googleusercontent.com" Cnt..ClientSecret = "S13DCA6KkYh1EgPv9-jLxxxh" // During the connection, the user will have to validate the services used // (See the additional examples for more details) IF GglConnect(Cnt) = False THEN Error(ErrorInfo()) END
Sintaxis
Conectando con la autenticación básica Ocultar los detalles
<Result> = GglConnect(<Google connection>)
<Result>: Boolean - True si se realizó la autenticación,
- False si se produce un problema. Para conocer los detalles del error, utilice ErrorInfo.
<Google connection>: gglConnection variable Nombre del gglConnection Variable a utilizar.
Atención: las propiedades del gglConnection Variable deben ser revisadas para la autentificación de OAuth 2.0.
Conectarse especificando los servicios utilizados Ocultar los detalles
<Result> = GglConnect(<Google connection> , <Google service>)
<Result>: Boolean - True si se realizó la autenticación,
- False si se produce un problema. Para más detalles sobre el error, utilice ErrorInfo.
<Google connection>: gglConnection variable Nombre de la gglConnection Variable a utilizar. <Google service>: Integer constant (or combination of constants) Servicio de Google para habilitar (la aplicación debe acceder a estos servicios): | | gglServiceCalendar | "Servicio"Google Calendar: Google Calendar | gglServiceContacts | "Servicio"Contactos de Google: Gestión de contactos de Google | gglServiceDocuments | El servicio "Google Docs List": Gestión de documentos | gglServicePicasa | "Picasa" service |
Observaciones Posibles casos de error: - La conexión de INTERNET no es válida.
- La autenticación no se realizó correctamente.
Requisitos previos para la autenticación OAuth 2.0 - Haga clic en "Crear un proyecto".. Indique el nombre de su proyecto. Se propone automáticamente un identificador para su proyecto.
- Valide
- Se crea el proyecto.
- En el menú de la izquierda, haga clic en "API and authentication" y luego en "API"..
- Seleccione los servicios requeridos por la aplicación:
- Para acceder a los Calendar s, elija "Calendar API" (categoría "Google Apps API s").
- Para acceder a los contactos, seleccione "Contactos API" (categoría "Google Apps API s")..
- Para acceder a los documentos de Google, seleccione "Drive API" (categoría "Google Apps API s")..
- Para acceder a los álbumes de Picasa y a los documentos, no es necesario seleccionar un API específico..
- En el menú de la izquierda, haga clic en "Identificadores"..
- A continuación, haga clic en el botón "Crear un identificador de cliente.
- Seleccione el tipo de aplicación: "Aplicación instalada".
- La pantalla de autorización debe configurarse durante la primera creación del identificador de cliente..
- En la pantalla de autorización, en el área "Nombre del producto", introduzca el nombre de su solicitud, por ejemplo.
- Haga clic en "Guardar"..
- Se vuelve a visualizar la pantalla para crear el identificador de cliente..
- Valide. Se crean los identificadores de cliente:
- Identificación del cliente. Este identificador debe almacenarse. Se utilizará en el gglConnection Variable.
- Código secreto del cliente. Este identificador debe almacenarse. Se utilizará en el gglConnection Variable.
- Redirección URI. Compruebe si se especifica "http://localhost"..
Autenticación OAuth 2.0 La llamada a GglConnect desencadena: - La apertura de una ventana de inicio de sesión para el usuario final. Si se especifica la propiedad ..Email de la variable gglConnection, Google completa previamente la ventana de conexión con la dirección de correo electrónico especificada. La ventana de inicio de sesión no se muestra si el usuario ya está conectado..
- La apertura de la ventana de autorización. El usuario final debe permitir que la aplicación acceda a su cuenta. Esta ventana se cierra automáticamente cuando el usuario acepta o cancela.
Observaciones: - Si se utiliza la sintaxis 1 (conexión con la autenticación básica), se mostrará una ventana de autorización cada vez que se intente acceder a un nuevo servicio..
- Si se utiliza la sintaxis 2 (conexión especificando los servicios utilizados), se mostrará una ventana de autorización para todos los servicios solicitados al principio de la aplicación..
- La ventana de autorización se puede visualizar durante el primer inicio de la aplicación si se gestiona la persistencia de la conexión (véase el párrafo siguiente)..
Persistencia de la conexión Durante la conexión a los servicios de Google, los tokens de autenticación no se guardan.. Por lo tanto, es necesario volver a iniciar sesión y volver a autorizar el acceso a la aplicación cada vez que se ejecuta (es decir, cada vez que se utiliza un gglConnection Variable "en blanco"). Para que la autorización de acceso sea persistente, todo lo que tiene que hacer es llamar a las funciones de serialización de WLanguage. Ejemplo de implementación de la persistencia utilizando un archivo XML:
let sAuthPersistenceFile = SysDir(srLocalAppData) + [fSep] + "gglauth.xml"
cnt is gglConnection // If connection already established IF fFileExist(sAuthPersistenceFile) THEN // Restore the connection let bufDeserialize = fLoadBuffer(sAuthPersistenceFile) Deserialize(cnt, bufDeserialize, psdXML) ELSE // New connection cnt.Email = "email@gmail.com" cnt.ClientID = "387756281032-qffa6dajjd5348iqhi558xxxxxxxx.apps.googleusercontent.com" cnt.ClientSecret = "Sxxxxx-jLMwwh" END
IF GglConnect(cnt, gglCalendarService) THEN // Save the connection in order to re-use it later bufSerialize is Buffer Serialize(cnt, bufSerialize, psdXML) fSaveBuffer(sAuthPersistenceFile, bufSerialize) END
Remark: Las fichas de autenticación de un gglConnection Variable se pueden autorizar a través de GglDesconectar. Sintaxis compatible hasta abril de 2015 (puede utilizarse con versiones anteriores a la versión 20) Hasta abril de 2015, tiene la posibilidad de utilizar la siguiente sintaxis:
<Result> = GglConnect(Google Connection>)
donde <Conexión Google> es una variable de tipo gglConnection compuesta de las siguientes propiedades: | | | denominar | Tipo utilizado | Efecto |
---|
Email | Cadena de caracteres | Google email Address del usuario (corresponde a su login). | Contraseña | Cadena de caracteres | Contraseña de Connection. | Nombre de la aplicación | Cadena de caracteres | Nombre de la aplicación. Este Property puede corresponder a una cadena vacía. |
// SYNTAX OBSOLETE FROM APRIL 2015
// Connection Cnt is gglConnection Cnt..Email = "vince@gmail.com" Cnt..Password = "azerty" Cnt..ApplicationName = "MyApp-03" IF GglConnect(Cnt) = False THEN Error(ErrorInfo()) END
Atención: A partir del 14 de noviembre de 2014, esta sintaxis ya no se puede utilizar si se utiliza el servicio "Google Calendar".. Debe utilizar el modo de autenticación "OAuth 2.0" disponible: - en la versión 20.
- en la versión 19 a través de la actualización 89 795 (este módulo se encuentra entre los parches disponibles en los recursos prácticos de WINDEV, WEBDEV y WINDEV Mobile, http://www.windev.com/lst/newfeatures-st.html).
Esta página también está disponible para…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|