GlideSession : inclus dans l’étendue

  • Rversion finale: Washingtondc
  • Mis à jour 1 févr. 2024
  • 4 minutes de lecture
  • L’API GlideSession , incluse dans le champ d’application, fournit un moyen de trouver des informations sur la session en cours.

    Il n’existe aucun constructeur permettant de créer une instance d’un objet GlideSession inclus dans le champ d’application. Au lieu de cela, utilisez la méthode getSession() de l’API GlideSystem incluse dans le champ d’application.

    GlideSession incluse dans le périmètre : getClientData(String paramName)

    Récupère une valeur de client de session précédemment définie avec putClientData().

    Utilisez cette méthode pour récupérer les valeurs de données qui ont été définies à l’aide de la méthode putClientData().

    Tableau 1. Paramètres
    Nom Type Description
    paramName Chaîne Nom des données client à récupérer.
    Tableau 2. Renvoie
    Type Description
    Chaîne Données client sous forme de chaîne.
    var session = gs.getSession();
    session.putClientData('test1', 'Harry');
    var clientData = session.getClientData('test1');
    gs.info(clientData);

    Sortie :

    Harry

    GlideSession inclus dans l’étendue : getClientIP()

    Renvoie l’adresse IP du client.

    Tableau 3. Paramètres
    Nom Type Description
    Aucun
    Tableau 4. Renvoie
    Type Description
    Chaîne L'adresse IP.
    var session = gs.getSession();
    var addr = session.getClientIP();
    gs.info(addr);

    Sortie :

    50.59.164.97

    GlideSession incluse dans l’étendue : getCurrentApplicationId()

    Renvoie l’application actuellement sélectionnée dans le sélecteur d’application.

    Cette méthode nécessite des privilèges d’administrateur.

    Tableau 5. Paramètres
    Nom Type Description
    Aucun
    Tableau 6. Renvoie
    Type Description
    Chaîne L’application actuellement sélectionnée.
    var session = gs.getSession();
    var appID = session.getCurrentApplicationId();
    gs.info(appID);

    Sortie :

    ce05b9f32b840200c5244f74b4da1501

    GlideSession incluse dans le champ d’application : getCurrentDomainID()

    Renvoie les sys_id du domaine actuel pour la session de l’utilisateur connecté.

    L’identificateur renvoyé dépend du type de domaine et de l’instanciation de ce domaine.
    • Si l’utilisateur est configuré dans le domaine global et qu’il n’utilise pas le sélecteur de domaine pour changer de domaine, la méthode renvoie null.
    • Si l’utilisateur utilise le sélecteur de domaine pour basculer vers le domaine global, la méthode renvoie la chaîne « global ».
    • Pour tous les autres domaines, la méthode renvoie les sys_id de ce domaine.
    Tableau 7. Paramètres
    Nom Type Description
    Aucun
    Tableau 8. Renvoie
    Type Description
    Chaîne Sys_id du domaine de session de l’utilisateur actuellement connecté. Il s’agit des mêmes informations qui apparaissent dans le sélecteur de domaine.

    Cet exemple montre le domaine de l’enregistrement de sys_email actuel défini sur le domaine de session de l’utilisateur, si le domaine utilisateur est global ou nul.

    // 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 inclus dans le périmètre : getLanguage()

    Renvoie le code de langue de la session.

    Tableau 9. Paramètres
    Nom Type Description
    Aucun
    Tableau 10. Renvoie
    Type Description
    Chaîne Code de langue de la session.
    var session = gs.getSession();
    var language = session.getLanguage();
    gs.info(language);

    Sortie :

    en

    GlideSession incluse dans le champ d’application : getSessionToken()

    Renvoie le jeton de session.

    Tableau 11. Paramètres
    Nom Type Description
    Aucun
    Tableau 12. Renvoie
    Type Description
    Chaîne Le jeton de session.
    var session = gs.getSession();
    var token = session.getSessionToken();
    gs.info(token);

    Sortie :

    4284b5372b840200c5244f74b4da15f2c3476cf7fcb6572afa4ef9d5e6d307a5fd9e1da7

    GlideSession incluse dans le périmètre : getTimeZoneName()

    Renvoie le nom du fuseau horaire de la session.

    Tableau 13. Paramètres
    Nom Type Description
    Aucun
    Tableau 14. Renvoie
    Type Description
    Chaîne Nom du fuseau horaire de la session.
    var session = gs.getSession();
    var zoneName = session.getTimeZoneName();
    gs.info(zoneName);

    Sortie :

    US/Pacific

    GlideSession incluse dans le périmètre : getUrlOnStack()

    Renvoie l’URL sur la pile. Renvoie null si la pile est vide.

    Tableau 15. Paramètres
    Nom Type Description
    Aucun
    Tableau 16. Renvoie
    Type Description
    Chaîne L’URL. Renvoie null si la pile est vide.
    var session = gs.getSession();
    var URL = session.getUrlOnStack();
    gs.info(URL);

    Sortie : des sauts de ligne ont été ajoutés pour plus de clarté.

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

    GlideSession incluse dans le champ d’application : isImpersonating()

    Renvoie la valeur true si l’utilisateur emprunte l’identité d’un autre utilisateur.

    Tableau 17. Paramètres
    Nom Type Description
    Aucun
    Tableau 18. Renvoie
    Type Description
    Booléen Renvoie la valeur true si l’utilisateur emprunte l’identité d’un autre utilisateur. dans le cas contraire, renvoie la valeur false.
    var isImpersonator = gs.getSession().isImpersonating();
    gs.info(isImpersonator);

    GlideSession incluse dans le champ d’application : isInteractive()

    Renvoie la valeur true si la session est interactive.

    Une session interactive implique qu’un utilisateur final interagisse avec une interface utilisateur qui récupère ensuite des informations à partir d’un serveur. Un exemple de ce type de session est lorsqu’un utilisateur se connecte à l’aide de l’écran de connexion ou utilise un formulaire pour interroger un magasin de données. Une session non interactive est une session qui implique uniquement une interaction de programmation avec un serveur, telle qu’une demande SOAP pour récupérer des données.

    Tableau 19. Paramètres
    Nom Type Description
    Aucun
    Tableau 20. Renvoie
    Type Description
    Booléen Vrai si la session est interactive.
    var interActive = gs.getSession().isInteractive();
    gs.info(interActive);

    GlideSession incluse dans le champ d’application : isLoggedIn()

    Renvoie la valeur true si l’utilisateur est connecté.

    Tableau 21. Paramètres
    Nom Type Description
    Aucun
    Tableau 22. Renvoie
    Type Description
    Booléen Vrai si l’utilisateur est connecté.
    var session = gs.getSession();
    var loggedIn = session.isLoggedIn();
    gs.info(loggedIn);

    Sortie :

    true

    GlideSession incluse dans le périmètre : putClientData(String paramName, String paramValue)

    Définit une valeur de client de session qui peut être récupérée avec getClientData(). Cette méthode est utilisée dans un script côté serveur qui s’exécute lorsqu’un formulaire est créé.

    Tableau 23. Paramètres
    Nom Type Description
    paramName Chaîne Nom des données client à définir.
    paramValue Chaîne Valeur des données du client.
    Tableau 24. Renvoie
    Type Description
    nul
    var session = gs.getSession();
    session.putClientData('test1', 'Harry');
    var clientData = session.getClientData('test1');
    gs.info(clientData);

    Sortie :

    Harry