Etiqueta

29 enero 2018

Obtener el UUID de la sesión Omnis Studio Web

Entre las muchas cosas que incorporó la versión 8.1 de Omnis Studio para la Web, nos contaba los chico de Omnis, que ahora al establecerse la comunicación desde el cliente con el servidor de aplicaciones web, se genera un UUID de identificación para la sesión, el cual es guardado como una cookie y enviada como parámetro cada vez que se produce un intercambio de datos. La cookie caduca después de un año, tras el cual, se generará un nuevo UUID. Naturalmente las cookies deberán estar habilitadas, tanto en el servidor web, como en los clientes para que esto funcione.



Nada mas leer esto me preguntaba cómo podríamos desde programación Omnis, obtener el UUID asignado y así poder usarlo, para (por ejemplo) guardar y ajustar preferencias relativas a la sesión en uso, la respuesta viene de la mano de javascript, ya sabemos que podemos incluir código javascript, en los métodos de ejecución exclusiva en el cliente, habitualmente usamos el método "$init" en nuestros "remote-form" con éste propósito, a continuación mostramos el código necesario para la obtención del UUID asignado a la sesión:

JavaScript: var getCookie = function (name) {
JavaScript: {    var cookies = document.cookie.split(';');}
JavaScript: {    for (var i = 0 ; i < cookies.length ; ++i) {}
JavaScript: {        var pair = cookies[i].trim().split('=');}
JavaScript: {        if (pair[0] == name) return pair[1];}
JavaScript: {    }}
JavaScript: {    return NULL;}
JavaScript: }
JavaScript: lIDCookie = getCookie("OMNISCLIENTID");
Do method setIDCookie (lIDCookie)
"lIdCookie" es una variable local y "setIDCookie" es el método (de ejecución en el servidor) que recibirá "lIDCookie" como parámetro.



No hay comentarios: