THttpAppSrv
Main page -> ICS component reference -> THttpAppSrv
Contents
Overview
unit | OverbyteIcsHttpAppServer | |
inheritance | THttpAppSrv -> THttpServer -> TComponent |
THttpAppSrv is implementing the core of an HTTP application server. It is used to build powerful and large web applications with dynamic pages. See the Tutorial for a step by step explanation of the component use.
Properties
Object inspector properties
Addr | Binds the server to a specific IP-address and only receives request for that IP+Port. | |
AuthDigestMethod | Select the method to be used for digest authentication. | |
AuthDigestNonceLifeTimeMin | Life time for digest nonce. | |
AuthRealm | Name space for authentication. | |
AuthTypes | Allowed authentications methods. | |
DefaultDoc | Name of the default document. | |
DocDir | Path name for the root directory where documents are stored. | |
IcsLogger | Reference to the TIcsLgger component. | |
KeepAliveTimeSec | Keep alive time expressed in seconds. | |
LingerOnOff | How linger must be done. This affect the way sockets are closed. | |
LingerTimeout | How long should the socket linger when closing. | |
ListenBackog | How many connections can be queued by the OS before refusing new connections. | |
MaxClients | Maximum number of simultaneous client accepted. Use 0 if not limit desired. | |
MaxRequestsKeepAlive | MaxRequestsKeepAlive. | |
Name | Component name. | |
Options | Affect how the component is operating. | |
Port | TCP port number the component has to listen to. | |
SessionTimeout | Time in second for session expiration. | |
Tag | Tag. | |
TemplateDir | Path where the component search for dynamic pages templates. |
Runtime properties
ClientCount | Number of currently connected clients. | |
Client | Array of connected clients. Index is from 0 to ClientCount - 1. | |
ClientClass | Reference to the class the component has to instanciate for each client. | |
SessionCount | Number of active sessions. | |
Sessions | Array of active sessions. Index if from 0 to SessionCount - 1. | |
WSessions | Reference to TWebSessions instance used to manage sessions. | |
WSocketServer | Reference to the underlaying TWSocketServer. |
Methods
Start | Start listening for clients. | |
Stop | Stop listening for clients. | |
SaveSessionsToFile | Save all current sessions to a file. | |
LoadSessionsFromFile | Load sessions saved in a file. Existing sessions are deleted. | |
ClearSessions | Delete all sessions. | |
AddGetHandler | Add a handler class for a given URL for HTTP GET method. | |
AddPostHandler | Add a handler class for a given URL for HTTP POST method. | |
AddGetAllowedPath | Add a path that the component is allowed to server static pages or files. |
Events
OnAuthGetPassword | Triggered to get the password for authentication. | |
OnAuthGetType | TAuthGetTypeEvent. | |
OnAuthNtlmBeforeValidat | TAuthNtlmBeforeValidate. | |
OnAuthResult | TAuthResultEvent. | |
OnBeforeProcessRequest | Triggered before processing any request. | |
OnClientConnect | Triggered when a client has connected. | |
OnClientDisconnect | Triggered when a client is about to disconnect. | |
OnDeleteSession | Triggered when a session is deleted. | |
OnFilterDirEntry | Triggered to filter directory entries. | |
OnGetDocument | Triggered when a client sent GET request. | |
OnHeadDocument | Triggered when a client sent HEAD request. | |
OnHttpRequestDone | A HTTP request has been handled on behalf of a client. | |
OnPostDocument | Triggered when a client sent POST request. | |
OnPostedData | Triggered when client post data and you accepted it from OnPostDocument event. | |
OnServerStarted | Triggered when server has started listening. | |
OnServerStopped | Triggered when server has stopped listening. |
How to
Build a HTTP webserver application