Caching Proxy Help

API Request Processing

Présentation de l'interface API

L'interface API permet d'étendre les fonctions de base du serveur proxy. En créant des modules d'extension, vous pouvez effectuer des traitements personnalisés tels que ceux répertoriés ci-dessous.

Procédure d'émission des demandes vers le serveur

La procédure de base d'émission des demandes vers le serveur peut être répartie en plusieurs étapes, dépendant du type de traitement réalisé par le serveur durant cette phase. Chaque étape comprend une jonction à l'emplacement de laquelle la partie de programme indiquée peut s'exécuter. En ajoutant les directives API à votre fichier de configuration, vous définissez les fonctions d'application auxquelles le serveur doit faire appel lors d'une étape spécifique. Pour appeler plusieurs fonctions d'application au cours d'une étape de transmission des demandes au serveur, incluez plusieurs directives de l'interface API pour cette étape.

Le programme compilé se trouve dans un fichier .DLL, .so ou .o selon le système d'exploitation utilisé. Alors que le serveur effectue les étapes de traitement des demandes, il appelle les fonctions d'application d'extension associées à chaque étape jusqu'à ce que l'une des fonctions indique qu'elle a traité la demande. Lorsque plusieurs fonctions d'extension sont appelées lors d'une étape donnée, celles-ci sont appelées dans l'ordre où elles apparaissent dans le fichier de configuration.

Si la demande n'est pas satisfaite par une fonction d'application (aucune fonction d'application n'est indiquée ou la fonction d'application correspondant à cette étape a renvoyé le code HTTP_NOACTION), le serveur exécute l'action par défaut qui correspond à cette étape. Remarque : Cela est vrai pour toutes les étapes, sauf pour l'étape Service, qui n'est associée à aucune action par défaut.

Directives de configuration API

Chaque étape de transmission des demandes est associée à une directive de configuration qui permet d'indiquer la fonction d'application personnalisée devant être appelée et exécutée au cours de cette étape.

Format des directives API

ServerInit chemin/fichier:nom_fonction
PreExit chemin/fichier:nom_fonction
Authentication Type chemin/fichier:nom_fonction
NameTrans /URL chemin/fichier:nom_fonction
Authorization /URL chemin/fichier:nom_fonction
ObjectType /URL chemin/fichier:nom_fonction
PostAuth chemin/fichier:nom_fonction
Service /URL chemin/fichier:nom_fonction
Transmogrifier /chemin/fichier:nom_fonction_ouverture:nom_fonction_écriture:nom_fonction_fermeture:nom_fonction_erreur
Log /URL chemin/fichier:nom_fonction
Erreur /URL chemin/fichier:nom_fonction
PostExit chemin/fichier:nom_fonction
ServerTerm chemin/fichier:nom_fonction
Midnight chemin/fichier:nom_fonction
PICSDBLookup chemin/fichier:nom_fonction
GC Advisor chemin/fichier:nom_fonction
Proxy Advisor chemin/fichier:nom_fonction

Variables des directives API

Les variables figurant dans ces directives ont les significations suivantes :
Type
(Utilisé uniquement avec la directive Authentication.) Ce paramètre détermine si la fonction d'application est appelée. Les valeurs admises sont les suivantes :
De base
La fonction d'application n'est appelée que pour les demandes d'authentification de base.
*
La fonction d'application est appelée pour toutes les demandes.

/URL
Cette valeur détermine les demandes d'URL pour lesquelles la fonction d'application doit être appelée. Les URL indiquées dans ces directives sont virtuelles (elles ne comportent pas le protocole) mais sont précédées d'une barre oblique (/). Par exemple, /www.ibm.com est correct mais http://www.ibm.com est incorrect. Les valeurs admises sont les suivantes :
Une URL spécifique
La fonction d'application n'est appelée que pour cette URL.
Modèle d'URL
La fonction d'application n'est appelée que pour les URL correspondant au modèle. Le modèle d'URL est indiqué par /URL*, /* ou *.

Remarque : Vous devez indiquer un modèle d'URL pour la directive Service afin que les chemins d'accès soient convertis.


/chemin/fichier
Désigne le nom de fichier complet de votre programme compilé.
nom_fonction
Nom attribué à la fonction d'application dans le programme. Dans la directive Transmogrifier, vous devez fournir les noms des fonctions d'ouverture, d'écriture et de fermeture.

Informations connexes