THttpAppSrv
Jump to navigation
Jump to search
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