GlideSession - com escopo

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 4 min. de leitura
  • A API GlideSession com escopo fornece uma maneira de encontrar informações sobre a sessão atual.

    Não há construtores para criar uma instância de um objeto GlideSession com escopo. Em vez disso, use o método getSession() da API GlideSystem com escopo.

    GlideSession com escopo - getClientData(cadeia de caracteres paramName)

    Recupera um valor de cliente de sessão definido anteriormente com putClientData().

    Use este método para recuperar valores de dados que foram definidos usando o método putClientData().

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    paramName Cadeia de caracteres Nome dos dados do cliente a serem recuperados.
    Tabela 2. Retorna
    Tipo Descrição
    Cadeia de caracteres Os dados do cliente como uma cadeia de caracteres.
    var session = gs.getSession();
    session.putClientData('test1', 'Harry');
    var clientData = session.getClientData('test1');
    gs.info(clientData);

    Saída:

    Harry

    GlideSession com escopo - getClientIP()

    Retorna o endereço IP do cliente.

    Tabela 3. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 4. Retorna
    Tipo Descrição
    Cadeia de caracteres O endereço IP.
    var session = gs.getSession();
    var addr = session.getClientIP();
    gs.info(addr);

    Saída:

    50.59.164.97

    GlideSession com escopo - getCurrentApplicationId()

    Retorna a aplicação selecionada no momento no seletor de aplicações.

    Este método requer privilégios de administrador.

    Tabela 5. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 6. Retorna
    Tipo Descrição
    Cadeia de caracteres A aplicação selecionada no momento.
    var session = gs.getSession();
    var appID = session.getCurrentApplicationId();
    gs.info(appID);

    Saída:

    ce05b9f32b840200c5244f74b4da1501

    GlideSession com escopo - getCurrentDomainID()

    Retorna o sys_id do domínio atual da sessão do usuário conectado.

    O identificador retornado depende do tipo de domínio e da instanciação desse domínio.
    • Se o usuário estiver configurado no domínio global e não usar o seletor de domínio para alternar domínios, o método retornará nulo.
    • Se o usuário usar o seletor de domínio para alternar para o domínio global, o método retornará a cadeia de caracteres "global".
    • Para todos os outros domínios, o método retorna o sys_id desse domínio.
    Tabela 7. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 8. Retorna
    Tipo Descrição
    Cadeia de caracteres Sys_id do domínio da sessão do usuário conectado no momento. Essas são as mesmas informações que aparecem no seletor de domínio.

    Este exemplo mostra o domínio do registro sys_email atual sendo definido como o domínio de sessão do usuário, se o domínio do usuário for global ou nulo.

    // Set domain based on parent record's domain
    setDomain();
    
    // If the domain is global, set to user's domain
    if (current.sys_domain == 'global' || current.sys_domain.nil())
       current.sys_domain = gs.getSession().getCurrentDomainID();
    
    function setDomain() {
       if (current.target_table.nil())
          return;
    
       var d = new GlideRecord(current.target_table);
       if (!d.isValid())
          return;
    
       if (!d.get('sys_id', current.instance))
          return;
    
       if (typeof(d.sys_domain) == 'object')
          current.sys_domain = d.sys_domain;
    

    GlideSession com escopo - getLanguage()

    Retorna o código de idioma da sessão.

    Tabela 9. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 10. Retorna
    Tipo Descrição
    Cadeia de caracteres O código de idioma da sessão.
    var session = gs.getSession();
    var language = session.getLanguage();
    gs.info(language);

    Saída:

    en

    GlideSession com escopo - getSessionToken()

    Retorna o token da sessão.

    Tabela 11. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 12. Retorna
    Tipo Descrição
    Cadeia de caracteres O token da sessão.
    var session = gs.getSession();
    var token = session.getSessionToken();
    gs.info(token);

    Saída:

    4284b5372b840200c5244f74b4da15f2c3476cf7fcb6572afa4ef9d5e6d307a5fd9e1da7

    GlideSession com escopo - getTimeZoneName()

    Retorna o nome do fuso horário da sessão.

    Tabela 13. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 14. Retorna
    Tipo Descrição
    Cadeia de caracteres O nome do fuso horário da sessão.
    var session = gs.getSession();
    var zoneName = session.getTimeZoneName();
    gs.info(zoneName);

    Saída:

    US/Pacific

    GlideSession com escopo - getUrlOnStack()

    Retorna o URL na pilha. Retorna nulo se a pilha estiver vazia.

    Tabela 15. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 16. Retorna
    Tipo Descrição
    Cadeia de caracteres O URL. Retorna nulo se a pilha estiver vazia.
    var session = gs.getSession();
    var URL = session.getUrlOnStack();
    gs.info(URL);

    Saída: quebras de linha adicionadas para maior clareza.

    sys_app.do?sys_id=ce05b9f32b840200c5244f74b4da1501&sysparm_goto_url=sys_app.do
    %3Fsys_id%3Dce05b9f32b840200c5244f74b4da1501

    GlideSession com escopo - isImpersonating()

    Retorna verdadeiro se o usuário estiver representando outro usuário.

    Tabela 17. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 18. Retorna
    Tipo Descrição
    Booliano Retorna verdadeiro se o usuário estiver representando outro usuário; caso contrário, retornará falso.
    var isImpersonator = gs.getSession().isImpersonating();
    gs.info(isImpersonator);

    GlideSession com escopo - isInteractive()

    Retorna verdadeiro se a sessão for interativa.

    Uma sessão interativa envolve um usuário final interagindo com uma interface do usuário que recupera informações de um servidor. Um exemplo desse tipo de sessão é quando um usuário faz login usando a tela de login ou usa um formulário para consultar um repositório de dados. Uma sessão não interativa é aquela que envolve somente interação programática com um servidor, como uma solicitação SOAP para recuperar dados.

    Tabela 19. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 20. Retorna
    Tipo Descrição
    Booliano Verdadeiro se a sessão for interativa.
    var interActive = gs.getSession().isInteractive();
    gs.info(interActive);

    GlideSession com escopo - isLoggedIn()

    Retorna verdadeiro se o usuário estiver conectado.

    Tabela 21. Parâmetros
    Nome Tipo Descrição
    Nenhum
    Tabela 22. Retorna
    Tipo Descrição
    Booliano Verdadeiro se o usuário estiver conectado.
    var session = gs.getSession();
    var loggedIn = session.isLoggedIn();
    gs.info(loggedIn);

    Saída:

    true

    GlideSession com escopo - putClientData(cadeia de caracteres paramName, cadeia de caracteres paramValue)

    Define um valor de cliente de sessão que pode ser recuperado com getClientData(). Este método é usado em um script do lado do servidor que é executado quando um formulário é criado.

    Tabela 23. Parâmetros
    Nome Tipo Descrição
    paramName Cadeia de caracteres Nome dos dados do cliente a serem definidos.
    paramValue Cadeia de caracteres Valor dos dados do cliente.
    Tabela 24. Retorna
    Tipo Descrição
    vazio
    var session = gs.getSession();
    session.putClientData('test1', 'Harry');
    var clientData = session.getClientData('test1');
    gs.info(clientData);

    Saída:

    Harry