Die Schnittstelle API erlaubt Ihnen, die Basisfunktionen des Proxyservers zu erweitern. Durch Schreiben von Plug-Ins (von Ihnen erstellte Anwendungserweiterungen) können Sie die Verarbeitung wie folgt steuern:
Der grundlegende Serverabfrageprozess lässt sich in mehrere Schritte unterteilen, basierend auf der Art der Verarbeitung, die der Server während dieser Phase durchführt. Jeder Schritt beinhaltet eine Verzweigung, an der ein bestimmter Programmteil ausgeführt werden kann. Durch Hinzufügen von API-Anweisungen zur Konfigurationsdatei können Sie festlegen, welche Anwendungsfunktionen der Server während eines bestimmten Schrittes aufrufen soll. Sie können mehrere Anwendungsfunktionen während eines einzelnen Anforderungsverarbeitungschritts aufrufen, wenn Sie für diesen Schritt mehr als eine der API-Anweisungen hinzufügen.
Abhängig vom verwendeten Betriebssystem ist das kompilierte Plug-In-Programm eine Datei mit der Erweiterung .DLL, .so oder .o. Während der Server die Schritte zur Anforderungsverarbeitung abarbeitet, ruft er die den einzelnen Schritten zugeordneten Plug-In-Anwendungsfunktionen auf, bis eine der Funktionen signalisiert, dass sie die Anforderung ausgeführt hat. Werden in einem bestimmten Schritt mehrere Plug-In-Funktionen aufgerufen, werden sie in der Reihenfolge aufgerufen, in der sie in der Konfigurationsdatei aufgeführt sind.
Wird die Anforderung von keiner Anwendungsfunktion ausgeführt (weil entweder keine Anwendungsfunktion angegeben wurde oder weil die Anwendungsfunktion für diesen Schritt den Code HTTP_NOACTION zurückgegeben hat), führt der Server die für diesen Schritt definierte Standardaktion aus. Anmerkung: Dies gilt für alle Schritte außer dem Service-Schritt; für den Service-Schritt ist keine Standardaktion vorgesehen.
Für jeden Schritt innerhalb des Anforderungsprozesses ist eine Konfigurationsanweisung vorhanden, mit der Sie eine angepasste Anwendungsfunktion festlegen können, die während dieses Schritts aufgerufen und ausgeführt werden sollen.
Falls mehrere Plug-In-Funktionen vorhanden sind, die in einem Verarbeitungsschritt aufgerufen werden, ist die relative Reihenfolge dieser Anweisungen manchmal von Bedeutung. Innerhalb eines Schrittes werden die für diesen Schritt definierten Funktionen in der Reihenfolge ausgeführt, in der sie angegeben sind.
Die Anweisungen NameTrans und Service funktionieren in derselben Weise wie die Anweisung Exec, und sie sind abhängig von ihrem Vorkommen und ihrer Anordnung relativ zu anderen Zuordnungsanweisungen in der Konfigurationsdatei. Dies bedeutet, dass der Server die Anweisungen Service, NameTrans, Map, Pass, Exec, Redirect und Fail in der Reihenfolge verarbeitet, die sie in der Konfigurationsdatei haben. Wenn der Server einen URL erfolgreich einer Datei zuordnet, werden keine nachfolgenden Anweisungen für diese Anforderung gelesen oder verarbeitet.
Anmerkung: Die Anweisungen NameTrans und Service können zusammen mit den Anweisungen Map, Pass, Exec, Redirect und Fail mit Hilfe des Formulars Routing von Anforderungen konfiguriert werden. Bevor dieses Formular geändert wird, zeigt es die Standardeinstellungen, die für diese Anweisungen in der richtigen Reihenfolge aufgeführt sind.
ServerInit | /Pfad/Datei:Funktionsname | ||
PreExit | /Pfad/Datei:Funktionsname | ||
Authentication | Typ | /Pfad/Datei:Funktionsname | |
NameTrans | /URL | /Pfad/Datei:Funktionsname | |
Berechtigung | /URL | /Pfad/Datei:Funktionsname | |
Objektart | /URL | /Pfad/Datei:Funktionsname | |
PostAuth | /Pfad/Datei:Funktionsname | ||
Service | /URL | /Pfad/Datei:Funktionsname | |
Transmogrifier | /Pfad/Datei:Name_Funktion_Öffnen:Name_Funktion_Schreiben:Name_Funktion_Schließen:Name_Funktion_Fehler | ||
Protokoll | /URL | /Pfad/Datei:Funktionsname | |
Fehler | /URL | /Pfad/Datei:Funktionsname | |
PostExit | /Pfad/Datei:Funktionsname | ||
ServerTerm | /Pfad/Datei:Funktionsname | ||
Midnight | /Pfad/Datei:Funktionsname | ||
PICSDBLookup | /Pfad/Datei:Funktionsname | ||
GC Advisor | /Pfad/Datei:Funktionsname | ||
Proxy Advisor | /Pfad/Datei:Funktionsname |
Anmerkung: Eine URL-Schablone ist für die Anweisung Service erforderlich, wenn Sie eine Pfadübersetzung wünschen.