4D v16.3

Méthode base Sur connexion Web

Accueil

 
4D v16.3
Méthode base Sur connexion Web

Méthode base Sur connexion Web  


 

 

La Méthode base Sur connexion Web peut être appelée dans les cas suivants :

  • le serveur Web reçoit une requête débutant par l'URL 4DCGI.
  • le serveur Web reçoit une requête invalide.

Pour plus d'informations, reportez-vous ci-dessous au paragraphe “Appels de la Méthode base Sur connexion Web”.

Le serveur Web doit avoir démarré et la requête doit avoir été "acceptée" par la Méthode base Sur authentification Web (si elle existe).

La Méthode base Sur connexion Web reçoit six paramètres de type Texte, passés par 4D ($1, $2, $3, $4, $5 et $6). Voici leur description :

ParamètresTypeDescription
$1TexteURL
$2TexteEn-tête + corps HTTP (32 ko maximum)
$3TexteAdresse IP du navigateur
$4TexteAdresse IP appelée du serveur
$5TexteNom d’utilisateur
$6TexteMot de passe

Vous devez déclarer ces six paramètres de la manière suivante :

  ` Méthode base Sur connexion Web
 
 C_TEXTE($1;$2;$3;$4;$5;$6)
 
  ` Code pour la méthode
  • Données supplémentaires de l’URL
    Le premier paramètre ($1) est l’URL saisi par l'utilisateur dans la zone 'Adresse' de son navigateur Web, moins l’adresse hôte.
    Prenons l’exemple d’une connexion Intranet. Supposons que l’adresse IP de votre machine serveur Web 4D est 123.4.567.89. Le tableau suivant liste les valeurs de $1 selon l’URLsaisi dans le navigateur Web :
    URL saisi dans le navigateurValeur du paramètre $1
    123.4.567.89/
    http://123.4.567.89/
    123.4.567.89/Clients/Clients
    http://123.4.567.89/Clients/Clients
    http://123.4.567.89/Clients/Ajouter/Clients/Ajouter
    123.4.567.89/Faire_ceci/Si_OK/Faire_cela/Faire_ceci/Si_OK/Faire_cela

    Notez que vous êtes libre d'utiliser ce paramètre à votre convenance. 4D ignore simplement les valeurs passées au-delà de la partie hôte de l’URL. Par exemple, vous pouvez établir une convention dans laquelle la valeur "/Clients/Ajouter" signifie “aller directement à l'ajout d'un nouvel enregistrement dans la table [Clients].” En fournissant aux utilisateurs Web de votre base une liste des valeurs possibles et/ou des marqueurs par défaut, vous pouvez proposer des raccourcis vers différentes parties de votre application. Ainsi, les utilisateurs Web peuvent accéder rapidement aux ressources de votre site Web sans devoir naviguer dans toute la base à chaque connexion.

ATTENTION : Pour empêcher un utilisateur d'accéder directement à une base à l'aide d'un marqueur créé pendant une session précédente, 4D intercepte tout URL correspondant à un des URLs standard de 4D.

  • En-tête et corps de la requête HTTP
    Le deuxième paramètre ($2) est l'en-tête suivi du corps de la requête HTTP envoyée par le navigateur Web. Notez que ces informations sont passées telles quelles à votre Méthode base Sur connexion Web. Le contenu varie en fonction du type de navigateur Web qui tente de se connecter.
    Avec Safari sous Mac OS, vous recevrez un en-tête semblable à celui-ci :

    GET /favicon.ico HTTP/1.1
    Referer: http://123.45.67.89/4dcgi/test
    User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X; fr-fr) AppleWebKit/523.10.3 (KHTML, like Gecko) Version/3.0.4 Safari/523.10
    Cache-Control: max-age=0
    Accept: */*
    Accept-Language: fr-fr
    Accept-Encoding: gzip, deflate
    Connection: keep-alive
    Host: 123.45.67.89


    Avec Microsoft Edge sous Windows, vous recevrez un en-tête semblable à celui-ci :

    GET /test HTTP/1.1
    Accept: text/html, application/xhtml+xml, image/jxr, */*
    Accept-Encoding: gzip, deflate
    Accept-Language: fr-FR
    Connection: Keep-Alive
    Host: 123.45.67.89
    User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Safari/537.36 Edge/13.10586


    Si votre application exploite ces informations, il est de votre ressort d'analyser l'en-tête et le corps.

    Note : Pour des raisons de performances, la taille de ces données ne peut dépasser 32 Ko. Au-delà, elles sont tronquées par le serveur HTTP de 4D.

  • Adresse IP du navigateur
    Le troisième paramètre ($3) reçoit l’adresse IP de la machine du navigateur. Cette information peut vous permettre, en particulier, de distinguer les connexions Intranet des connexions Internet.
    Note : 4D retourne les adresses IPv4 dans un format hybride IPv6 comprenant un préfixe de 96 bits, par exemple ::ffff:192.168.2.34 pour l'adresse IPv4 192.168.2.34. Pour plus d'informations, reportez-vous à la section Prise en charge d’IP v6.
  • Adresse IP demandée du serveur
    Le quatrième paramètre ($4) reçoit l’adresse IP demandée du serveur Web 4D. En effet, 4D autorise le multi-homing, permettant d’exploiter des machines disposant de plusieurs adresses IP. Pour plus d’informations sur ce point, reportez-vous à la section Paramétrages du serveur Web.
  • Nom d'utilisateur et Mot de passe
    Les paramètres $5 et $6 reçoivent le nom d’utilisateur et le mot de passe saisis par l’utilisateur dans la boîte de dialogue standard d’identification affichée par le navigateur, le cas échéant.
    Cette boîte de dialogue apparaît pour chaque connexion dès que l’option Utiliser les mots de passe est cochée dans les Propriétés de la base (cf. section Sécurité des connexions).

Note : Si le nom d’utilisateur envoyé par le navigateur existe dans 4D, pour des raisons de confidentialité le paramètre $6 n’est alors pas rempli (il reçoit une chaîne vide).

La Méthode base Sur connexion Web peut être utilisée comme point d'entrée dans le serveur Web 4D, soit à l'aide de l'URL spécial 4DCGI, soit à l'aide d'URLs de commande personnalisés.

Attention : L’appel d’une commande 4D affichant un élément d’interface (DIALOGUE, ALERTE...) entraîne l’arrêt du traitement de la méthode.

La Méthode base Sur connexion Web est donc appelée dans les cas suivants :

  • lorsque 4D reçoit l’URL /4DCGI. La méthode base est appelée avec l’URL /4DCGI/<action> dans $1.
  • lorsqu’une page Web appelée avec un URL du type <chemin>/<fichier> n’est pas trouvée. La méthode base est appelée avec l’URL (*).
  • lorsqu’une page Web est appelée avec un URL du type <chemin>/ et qu’aucune page d’accueil par défaut n’est définie. La méthode base est appelée avec l’URL (*).

(*) Dans ces cas particuliers, l’URL reçu dans $1 ne débute pas par le caractère "/".   



Voir aussi  

Méthode base Sur authentification Web
Présentation des méthodes base
URLs et actions de formulaires

 
PROPRIÉTÉS 

Produit : 4D
Thème : Serveur Web
Nom intl. : On Web Connection Database Method

 
HISTORIQUE 

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v16)
4D - Langage ( 4D v16.1)
4D - Langage ( 4D v16.2)
4D - Langage ( 4D v16.3)