|
@@ -7,7 +7,7 @@ GCDWebServer is a lightweight GCD based HTTP 1.1 server designed to be embedded
|
|
* Support for streaming large HTTP bodies for requests and responses to minimize memory usage
|
|
* Support for streaming large HTTP bodies for requests and responses to minimize memory usage
|
|
* Built-in parser for web forms submitted using "application/x-www-form-urlencoded" or "multipart/form-data" encodings (including file uploads)
|
|
* Built-in parser for web forms submitted using "application/x-www-form-urlencoded" or "multipart/form-data" encodings (including file uploads)
|
|
* Minimal number of source files and no dependencies on third-party source code
|
|
* Minimal number of source files and no dependencies on third-party source code
|
|
-* Available under a friendly [New BSD License](GCDWebServer/blob/master/LICENSE)
|
|
|
|
|
|
+* Available under a friendly [New BSD License](blob/master/LICENSE)
|
|
|
|
|
|
What's not available out of the box but can be implemented on top of the API:
|
|
What's not available out of the box but can be implemented on top of the API:
|
|
* Authentication like Basic Authentication
|
|
* Authentication like Basic Authentication
|
|
@@ -91,8 +91,8 @@ Understanding GCDWebServer Architecture
|
|
GCDWebServer is made of only 4 core classes:
|
|
GCDWebServer is made of only 4 core classes:
|
|
* 'GCDWebServer' manages the socket that listens for new HTTP connections and the list of handlers used by the server.
|
|
* 'GCDWebServer' manages the socket that listens for new HTTP connections and the list of handlers used by the server.
|
|
* 'GCDWebServerConnection' is instantiated by 'GCDWebServer' to handle each new HTTP connection. Each instance stays alive until the connection is closed. You cannot use this class directly, but it is exposed so you can subclass it to override some hooks.
|
|
* 'GCDWebServerConnection' is instantiated by 'GCDWebServer' to handle each new HTTP connection. Each instance stays alive until the connection is closed. You cannot use this class directly, but it is exposed so you can subclass it to override some hooks.
|
|
-* 'GCDWebServerRequest' is created by the 'GCDWebServerConnection' instance after HTTP headers have been received. It wraps the request and handles the HTTP body if any. GCDWebServer comes with several subclasses of 'GCDWebServerRequest' to handle common cases like storing the body in memory or stream it to a file on disk. See [GCDWebServerRequest.h](GCDWebServer/blob/master/CGDWebServer/GCDWebServerRequest.h) for the full list.
|
|
|
|
-* 'GCDWebServerResponse' is created by the request handler and wraps the response HTTP headers and optional body. GCDWebServer provides several subclasses of 'GCDWebServerResponse' to handle common cases like HTML text in memory or streaming a file from disk. See [GCDWebServerResponse.h](GCDWebServer/blob/master/CGDWebServer/GCDWebServerResponse.h) for the full list.
|
|
|
|
|
|
+* 'GCDWebServerRequest' is created by the 'GCDWebServerConnection' instance after HTTP headers have been received. It wraps the request and handles the HTTP body if any. GCDWebServer comes with several subclasses of 'GCDWebServerRequest' to handle common cases like storing the body in memory or stream it to a file on disk. See [GCDWebServerRequest.h](blob/master/CGDWebServer/GCDWebServerRequest.h) for the full list.
|
|
|
|
+* 'GCDWebServerResponse' is created by the request handler and wraps the response HTTP headers and optional body. GCDWebServer provides several subclasses of 'GCDWebServerResponse' to handle common cases like HTML text in memory or streaming a file from disk. See [GCDWebServerResponse.h](blob/master/CGDWebServer/GCDWebServerResponse.h) for the full list.
|
|
|
|
|
|
Implementing Handlers
|
|
Implementing Handlers
|
|
=====================
|
|
=====================
|