vibe.d beta banner
get vibe.d
0.8.1

Asynchronous I/O that doesn’t get in your way, written in D

Enum HTTPServerOption

Specifies optional features of the HTTP server.

enum HTTPServerOption : int { ... }

Disabling unneeded features can speed up the server or reduce its memory usage.

Note that the options parseFormBody, parseJsonBody and parseMultiPartBody will also drain the HTTPServerRequest.bodyReader stream whenever a request body with form or JSON data is encountered.

Enum members

NameDescription
defaultsThe default set of options.

Includes all parsing options, as well as the errorStackTraces option if the code is compiled in debug mode.

distribute

Deprecated

Distributes request processing among worker threads

Note that this functionality assumes that the request handler is implemented in a thread-safe way. However, the D type system is bypassed, so that no static verification takes place.

For this reason, it is recommended to instead use runWorkerTaskDist and call listenHTTP from each task/thread individually. If the reusePort option is set, then all threads will be able to listen on the same port, with the operating system distributing the incoming connections.

If possible, instead of threads, the use of separate processes is more robust and often faster. The reusePort option works the same way in this scenario.

errorStackTracesEnables stack traces (HTTPServerErrorInfo.debugMessage).

Note that generating the stack traces are generally a costly operation that should usually be avoided in production environments. It can also reveal internal information about the application, such as function addresses, which can help an attacker to abuse possible security holes.

none
Nonedeprecated
parseCookies

Deprecated

Fills the .cookies field in the request

ParseCookiesdeprecated
parseFormBody

Deprecated

Fills the .form field in the request

ParseFormBodydeprecated
parseJsonBody

Deprecated

Fills the .json field in the request

ParseJsonBodydeprecated
parseMultiPartBody

Deprecated

Fills the .files field of the request for "multipart/mixed" requests

ParseMultiPartBodydeprecated
parseQueryString

Deprecated

Fills the .query field in the request

ParseQueryStringdeprecated
parseURLFills the .path and .queryString fields in the request
ParseURLdeprecated
reusePortEnable port reuse in listenTCP()
Authors

Sönke Ludwig, Jan Krüger, Ilya Shipunov

Copyright

© 2012-2013 RejectedSoftware e.K.

License

Subject to the terms of the MIT license, as written in the included LICENSE.txt file.