La pagina API fornisce la capacità di estendere le funzioni base del server proxy. Per la scrittura di plugin (estensioni di applicazione che si creano) è possibile personalizzare le elaborazioni come le seguenti:
L'elaborazione delle richieste di base del server può essere suddivisa in varie fasi basate sul tipo di elaborazione e che il server esegue durante quella fase. Ogni fase include un riferimento in base al quale può essere eseguita la parte specificata del programma. Aggiungendo istruzioni API al file di configurazione, si indica quali delle funzioni dell'applicazione si desidera siano richiamate dal server durante una particolare fase. E' possibile richiamare diverse funzioni dell'applicazione durante una fase dell'elaborazione della richiesta includendo più di una delle istruzioni API per quella fase.
Il programma plugin compilato è un file .DLL, .so o .o, a seconda del proprio sistema operativo. Mentre il server procede attraverso le fasi dell'elaborazione della richiesta, esso richiama le funzioni dell'applicazione associate ad ogni fase, fino a quando una delle funzioni non indica di stare gestendo la richiesta. Se è richiesta più di una funzione plugin per una fase particolare, queste funzioni vengono chiamate nell'ordine in cui sono riportate nel file di configurazione.
Se la richiesta non è completata da una funzione dell'applicazione(nessuna funzione dell'applicazione è stata specificata o la funzione dell'applicazione per quella fase ha restituito il codice HTTP_NOACTION), il server esegue la sua azione predefinita per quella fase. Nota: Ciò si verifica per tutte le fasi tranne che per la fase di Servizio in quanto non ha un'azione predefinita.
Per ciascuna fase nell'elaborazione della richiesta, esiste un'istruzione di configurazione che consente di specificare una funzione dell'applicazione personalizzata da richiamare ed eseguire durante quella fase.
Se si dispone di più funzioni plugin richiamate da una fase di elaborazione, qualche volta l'ordine relativo di quelle istruzioni è importante. All'interno di una fase, le fuzioni relative a quella fase saranno eseguite nell'ordine in cui sono elencate.
Le istruzioni NameTrans e Service funzionano come l'istruzione Exec e dipendono dalle ricorrenze e dalla posizione, in relazione alle altre istruzioni di mapping, all'interno del file di configurazione. Ciò indica che il server elabora le istruzioni Service, NameTrans, Map, Pass, Exec, Redirect e Fail nell'ordine sequenziale all'interno del file di configurazione. Quando un URL viene mappato in un file, esso non legge o elabora le altre istruzioni relative a quella richiesta.
Nota: Le istruzioni NameTrans e Service, insieme alle istruzioni Map, Pass, Exec, Redirect e Fail, possono essere configurate utilizzando il modulo Instradamento richiesta. Prima di essere modificato, questo modulo mostra le impostazioni predefinite che vengono visualizzate nell'ordine appropriato per queste istruzioni.
ServerInit | /path/file:nome_funzione | ||
PreExit | /path/file:nome_funzione | ||
Authentication | tipo | /path/file:nome_funzione | |
NameTrans | /URL | /path/file:nome_funzione | |
Authorization | /URL | /path/file:nome_funzione | |
ObjectType | /URL | /path/file:nome_funzione | |
PostAuth | /path/file:nome_funzione | ||
Service | /URL | /path/file:nome_funzione | |
Transmogrifier | /path/file:open_nome_funzione:write_nome_funzione:close_nome_funzione:error_nome_funzione | ||
Log | /URL | /path/file:nome_funzione | |
Errore | /URL | /path/file:nome_funzione | |
PostExit | /path/file:nome_funzione | ||
ServerTerm | /path/file:nome_funzione | ||
Midnight | /path/file:nome_funzione | ||
PICSDBLookup | /path/file:nome_funzione | ||
GC Advisor | /path/file:nome_funzione | ||
Proxy Advisor | /path/file:nome_funzione |
Nota: una maschera URL è richiesta con l'istruzione Service se si desidera che si verifichi la conversione del percorso.