vibe.d beta banner
get vibe.d
0.8.4

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
defaults The 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.

errorStackTraces Enables 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
None deprecated
parseCookies

Deprecated

Fills the .cookies field in the request

ParseCookies deprecated
parseFormBody

Deprecated

Fills the .form field in the request

ParseFormBody deprecated
parseJsonBody

Deprecated

Fills the .json field in the request

ParseJsonBody deprecated
parseMultiPartBody

Deprecated

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

ParseMultiPartBody deprecated
parseQueryString

Deprecated

Fills the .query field in the request

ParseQueryString deprecated
parseURL Fills the .path and .queryString fields in the request
ParseURL deprecated
reusePort Enable 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.