uWebSockets.js/docs/generated/index.html
2021-11-04 07:03:14 +01:00

59 lines
37 KiB
HTML

<!DOCTYPE html><html class="default no-js"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>uWebSockets.js v20.4.0 documentation</title><meta name="description" content="Documentation for uWebSockets.js v20.4.0 documentation"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="assets/style.css"/><link rel="stylesheet" href="assets/highlight.css"/><script async src="assets/search.js" id="search-script"></script></head><body><script>document.body.classList.add(localStorage.getItem("tsd-theme") || "os")</script><header><div class="tsd-page-toolbar"><div class="container"><div class="table-wrap"><div class="table-cell" id="tsd-search" data-base="."><div class="field"><label for="tsd-search-field" class="tsd-widget search no-caption">Search</label><input type="text" id="tsd-search-field"/></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="index.html" class="title">uWebSockets.js v20.4.0 documentation</a></div><div class="table-cell" id="tsd-widgets"><div id="tsd-filter"><a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a><div class="tsd-filter-group"><div class="tsd-select" id="tsd-filter-visibility"><span class="tsd-select-label">All</span><ul class="tsd-select-list"><li data-value="public">Public</li><li data-value="protected">Public/Protected</li><li data-value="private" class="selected">All</li></ul></div> <input type="checkbox" id="tsd-filter-inherited" checked/><label class="tsd-widget" for="tsd-filter-inherited">Inherited</label></div></div><a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a></div></div></div></div><div class="tsd-page-title"><div class="container"><h1>uWebSockets.js v20.4.0 documentation</h1></div></div></header><div class="container container-main"><div class="row"><div class="col-8 col-content"><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Enumerations</h3><ul class="tsd-index-list"><li class="tsd-kind-enum"><a href="enums/ListenOptions.html" class="tsd-kind-icon">Listen<wbr/>Options</a></li></ul></section><section class="tsd-index-section "><h3>Interfaces</h3><ul class="tsd-index-list"><li class="tsd-kind-interface"><a href="interfaces/AppOptions.html" class="tsd-kind-icon">App<wbr/>Options</a></li><li class="tsd-kind-interface"><a href="interfaces/HttpRequest.html" class="tsd-kind-icon">Http<wbr/>Request</a></li><li class="tsd-kind-interface"><a href="interfaces/HttpResponse.html" class="tsd-kind-icon">Http<wbr/>Response</a></li><li class="tsd-kind-interface"><a href="interfaces/MultipartField.html" class="tsd-kind-icon">Multipart<wbr/>Field</a></li><li class="tsd-kind-interface"><a href="interfaces/TemplatedApp.html" class="tsd-kind-icon">Templated<wbr/>App</a></li><li class="tsd-kind-interface"><a href="interfaces/WebSocket.html" class="tsd-kind-icon">Web<wbr/>Socket</a></li><li class="tsd-kind-interface"><a href="interfaces/WebSocketBehavior.html" class="tsd-kind-icon">Web<wbr/>Socket<wbr/>Behavior</a></li><li class="tsd-kind-interface"><a href="interfaces/us_listen_socket.html" class="tsd-kind-icon">us_<wbr/>listen_<wbr/>socket</a></li><li class="tsd-kind-interface"><a href="interfaces/us_socket.html" class="tsd-kind-icon">us_<wbr/>socket</a></li><li class="tsd-kind-interface"><a href="interfaces/us_socket_context_t.html" class="tsd-kind-icon">us_<wbr/>socket_<wbr/>context_<wbr/>t</a></li></ul></section><section class="tsd-index-section "><h3>Type aliases</h3><ul class="tsd-index-list"><li class="tsd-kind-type-alias"><a href="index.html#CompressOptions" class="tsd-kind-icon">Compress<wbr/>Options</a></li><li class="tsd-kind-type-alias"><a href="index.html#RecognizedString" class="tsd-kind-icon">Recognized<wbr/>String</a></li></ul></section><section class="tsd-index-section "><h3>Variables</h3><ul class="tsd-index-list"><li class="tsd-kind-variable"><a href="index.html#DEDICATED_COMPRESSOR_128KB" class="tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>128KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_COMPRESSOR_16KB" class="tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>16KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_COMPRESSOR_256KB" class="tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>256KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_COMPRESSOR_32KB" class="tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>32KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_COMPRESSOR_3KB" class="tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>3KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_COMPRESSOR_4KB" class="tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>4KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_COMPRESSOR_64KB" class="tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>64KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_COMPRESSOR_8KB" class="tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>8KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_DECOMPRESSOR" class="tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_DECOMPRESSOR_16KB" class="tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>16KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_DECOMPRESSOR_1KB" class="tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>1KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_DECOMPRESSOR_2KB" class="tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>2KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_DECOMPRESSOR_32KB" class="tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>32KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_DECOMPRESSOR_4KB" class="tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>4KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_DECOMPRESSOR_512B" class="tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>512B</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_DECOMPRESSOR_8KB" class="tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>8KB</a></li><li class="tsd-kind-variable"><a href="index.html#DISABLED" class="tsd-kind-icon">DISABLED</a></li><li class="tsd-kind-variable"><a href="index.html#SHARED_COMPRESSOR" class="tsd-kind-icon">SHARED_<wbr/>COMPRESSOR</a></li><li class="tsd-kind-variable"><a href="index.html#SHARED_DECOMPRESSOR" class="tsd-kind-icon">SHARED_<wbr/>DECOMPRESSOR</a></li></ul></section><section class="tsd-index-section "><h3>Functions</h3><ul class="tsd-index-list"><li class="tsd-kind-function"><a href="index.html#App" class="tsd-kind-icon">App</a></li><li class="tsd-kind-function"><a href="index.html#SSLApp" class="tsd-kind-icon">SSLApp</a></li><li class="tsd-kind-function"><a href="index.html#getParts" class="tsd-kind-icon">get<wbr/>Parts</a></li><li class="tsd-kind-function"><a href="index.html#us_listen_socket_close" class="tsd-kind-icon">us_<wbr/>listen_<wbr/>socket_<wbr/>close</a></li><li class="tsd-kind-function"><a href="index.html#us_socket_local_port" class="tsd-kind-icon">us_<wbr/>socket_<wbr/>local_<wbr/>port</a></li></ul></section></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Type aliases</h2><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="CompressOptions" class="tsd-anchor"></a><h3>Compress<wbr/>Options</h3><div class="tsd-signature tsd-kind-icon">Compress<wbr/>Options<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L331">index.d.ts:331</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>WebSocket compression options. Combine any compressor with any decompressor using bitwise OR.</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-type-alias"><a id="RecognizedString" class="tsd-anchor"></a><h3>Recognized<wbr/>String</h3><div class="tsd-signature tsd-kind-icon">Recognized<wbr/>String<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">string</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">ArrayBuffer</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Uint8Array</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Int8Array</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Uint16Array</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Int16Array</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Uint32Array</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Int32Array</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Float32Array</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">Float64Array</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L45">index.d.ts:45</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Recognized string types, things C++ can read and understand as strings.
&quot;String&quot; does not have to mean &quot;text&quot;, it can also be &quot;binary&quot;.</p>
</div><div><p>Ironically, JavaScript strings are the least performant of all options, to pass or receive to/from C++.
This because we expect UTF-8, which is packed in 8-byte chars. JavaScript strings are UTF-16 internally meaning extra copies and reinterpretation are required.</p>
<p>That&#39;s why all events pass data by ArrayBuffer and not JavaScript strings, as they allow zero-copy data passing.</p>
<p>You can always do Buffer.from(arrayBuffer).toString(), but keeping things binary and as ArrayBuffer is preferred.</p>
</div></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Variables</h2><section class="tsd-panel tsd-member tsd-kind-variable"><a id="DEDICATED_COMPRESSOR_128KB" class="tsd-anchor"></a><h3>DEDICATED_<wbr/>COMPRESSOR_<wbr/>128KB</h3><div class="tsd-signature tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>128KB<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L351">index.d.ts:351</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sliding dedicated compress window, requires 128KB of memory per socket</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="DEDICATED_COMPRESSOR_16KB" class="tsd-anchor"></a><h3>DEDICATED_<wbr/>COMPRESSOR_<wbr/>16KB</h3><div class="tsd-signature tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>16KB<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L345">index.d.ts:345</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sliding dedicated compress window, requires 16KB of memory per socket</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="DEDICATED_COMPRESSOR_256KB" class="tsd-anchor"></a><h3>DEDICATED_<wbr/>COMPRESSOR_<wbr/>256KB</h3><div class="tsd-signature tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>256KB<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L353">index.d.ts:353</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sliding dedicated compress window, requires 256KB of memory per socket</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="DEDICATED_COMPRESSOR_32KB" class="tsd-anchor"></a><h3>DEDICATED_<wbr/>COMPRESSOR_<wbr/>32KB</h3><div class="tsd-signature tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>32KB<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L347">index.d.ts:347</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sliding dedicated compress window, requires 32KB of memory per socket</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="DEDICATED_COMPRESSOR_3KB" class="tsd-anchor"></a><h3>DEDICATED_<wbr/>COMPRESSOR_<wbr/>3KB</h3><div class="tsd-signature tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>3KB<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L339">index.d.ts:339</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sliding dedicated compress window, requires 3KB of memory per socket</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="DEDICATED_COMPRESSOR_4KB" class="tsd-anchor"></a><h3>DEDICATED_<wbr/>COMPRESSOR_<wbr/>4KB</h3><div class="tsd-signature tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>4KB<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L341">index.d.ts:341</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sliding dedicated compress window, requires 4KB of memory per socket</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="DEDICATED_COMPRESSOR_64KB" class="tsd-anchor"></a><h3>DEDICATED_<wbr/>COMPRESSOR_<wbr/>64KB</h3><div class="tsd-signature tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>64KB<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L349">index.d.ts:349</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sliding dedicated compress window, requires 64KB of memory per socket</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="DEDICATED_COMPRESSOR_8KB" class="tsd-anchor"></a><h3>DEDICATED_<wbr/>COMPRESSOR_<wbr/>8KB</h3><div class="tsd-signature tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>8KB<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L343">index.d.ts:343</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sliding dedicated compress window, requires 8KB of memory per socket</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="DEDICATED_DECOMPRESSOR" class="tsd-anchor"></a><h3>DEDICATED_<wbr/>DECOMPRESSOR</h3><div class="tsd-signature tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L369">index.d.ts:369</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sliding dedicated decompress window, requires 32KB of memory per socket (plus about 23KB)</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="DEDICATED_DECOMPRESSOR_16KB" class="tsd-anchor"></a><h3>DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>16KB</h3><div class="tsd-signature tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>16KB<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L357">index.d.ts:357</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sliding dedicated decompress window, requires 16KB of memory per socket (plus about 23KB)</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="DEDICATED_DECOMPRESSOR_1KB" class="tsd-anchor"></a><h3>DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>1KB</h3><div class="tsd-signature tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>1KB<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L365">index.d.ts:365</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sliding dedicated decompress window, requires 1KB of memory per socket (plus about 23KB)</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="DEDICATED_DECOMPRESSOR_2KB" class="tsd-anchor"></a><h3>DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>2KB</h3><div class="tsd-signature tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>2KB<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L363">index.d.ts:363</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sliding dedicated decompress window, requires 2KB of memory per socket (plus about 23KB)</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="DEDICATED_DECOMPRESSOR_32KB" class="tsd-anchor"></a><h3>DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>32KB</h3><div class="tsd-signature tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>32KB<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L355">index.d.ts:355</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sliding dedicated decompress window, requires 32KB of memory per socket (plus about 23KB)</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="DEDICATED_DECOMPRESSOR_4KB" class="tsd-anchor"></a><h3>DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>4KB</h3><div class="tsd-signature tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>4KB<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L361">index.d.ts:361</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sliding dedicated decompress window, requires 4KB of memory per socket (plus about 23KB)</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="DEDICATED_DECOMPRESSOR_512B" class="tsd-anchor"></a><h3>DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>512B</h3><div class="tsd-signature tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>512B<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L367">index.d.ts:367</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sliding dedicated decompress window, requires 512B of memory per socket (plus about 23KB)</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="DEDICATED_DECOMPRESSOR_8KB" class="tsd-anchor"></a><h3>DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>8KB</h3><div class="tsd-signature tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>8KB<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L359">index.d.ts:359</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sliding dedicated decompress window, requires 8KB of memory per socket (plus about 23KB)</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="DISABLED" class="tsd-anchor"></a><h3>DISABLED</h3><div class="tsd-signature tsd-kind-icon">DISABLED<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L333">index.d.ts:333</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>No compression (always a good idea if you operate using an efficient binary protocol)</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="SHARED_COMPRESSOR" class="tsd-anchor"></a><h3>SHARED_<wbr/>COMPRESSOR</h3><div class="tsd-signature tsd-kind-icon">SHARED_<wbr/>COMPRESSOR<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L335">index.d.ts:335</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Zero memory overhead compression.</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-variable"><a id="SHARED_DECOMPRESSOR" class="tsd-anchor"></a><h3>SHARED_<wbr/>DECOMPRESSOR</h3><div class="tsd-signature tsd-kind-icon">SHARED_<wbr/>DECOMPRESSOR<span class="tsd-signature-symbol">:</span> <a href="index.html#CompressOptions" class="tsd-signature-type" data-tsd-kind="Type alias">CompressOptions</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L337">index.d.ts:337</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Zero memory overhead decompression.</p>
</div></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Functions</h2><section class="tsd-panel tsd-member tsd-kind-function"><a id="App" class="tsd-anchor"></a><h3>App</h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">App<span class="tsd-signature-symbol">(</span>options<span class="tsd-signature-symbol">?: </span><a href="interfaces/AppOptions.html" class="tsd-signature-type" data-tsd-kind="Interface">AppOptions</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="interfaces/TemplatedApp.html" class="tsd-signature-type" data-tsd-kind="Interface">TemplatedApp</a></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L309">index.d.ts:309</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Constructs a non-SSL app. An app is your starting point where you attach behavior to URL routes.
This is also where you listen and run your app, set any SSL options (in case of SSLApp) and the like.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5><span class="tsd-flag ts-flagOptional">Optional</span> options: <a href="interfaces/AppOptions.html" class="tsd-signature-type" data-tsd-kind="Interface">AppOptions</a></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="interfaces/TemplatedApp.html" class="tsd-signature-type" data-tsd-kind="Interface">TemplatedApp</a></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="SSLApp" class="tsd-anchor"></a><h3>SSLApp</h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">SSLApp<span class="tsd-signature-symbol">(</span>options<span class="tsd-signature-symbol">: </span><a href="interfaces/AppOptions.html" class="tsd-signature-type" data-tsd-kind="Interface">AppOptions</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="interfaces/TemplatedApp.html" class="tsd-signature-type" data-tsd-kind="Interface">TemplatedApp</a></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L312">index.d.ts:312</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Constructs an SSL app. See App.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>options: <a href="interfaces/AppOptions.html" class="tsd-signature-type" data-tsd-kind="Interface">AppOptions</a></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="interfaces/TemplatedApp.html" class="tsd-signature-type" data-tsd-kind="Interface">TemplatedApp</a></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="getParts" class="tsd-anchor"></a><h3>get<wbr/>Parts</h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">get<wbr/>Parts<span class="tsd-signature-symbol">(</span>body<span class="tsd-signature-symbol">: </span><a href="index.html#RecognizedString" class="tsd-signature-type" data-tsd-kind="Type alias">RecognizedString</a>, contentType<span class="tsd-signature-symbol">: </span><a href="index.html#RecognizedString" class="tsd-signature-type" data-tsd-kind="Type alias">RecognizedString</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><a href="interfaces/MultipartField.html" class="tsd-signature-type" data-tsd-kind="Interface">MultipartField</a><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L328">index.d.ts:328</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Takes a POSTed body and contentType, and returns an array of parts if the request is a multipart request</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>body: <a href="index.html#RecognizedString" class="tsd-signature-type" data-tsd-kind="Type alias">RecognizedString</a></h5></li><li><h5>contentType: <a href="index.html#RecognizedString" class="tsd-signature-type" data-tsd-kind="Type alias">RecognizedString</a></h5></li></ul><h4 class="tsd-returns-title">Returns <a href="interfaces/MultipartField.html" class="tsd-signature-type" data-tsd-kind="Interface">MultipartField</a><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">undefined</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="us_listen_socket_close" class="tsd-anchor"></a><h3>us_<wbr/>listen_<wbr/>socket_<wbr/>close</h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">us_<wbr/>listen_<wbr/>socket_<wbr/>close<span class="tsd-signature-symbol">(</span>listenSocket<span class="tsd-signature-symbol">: </span><a href="interfaces/us_listen_socket.html" class="tsd-signature-type" data-tsd-kind="Interface">us_listen_socket</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L315">index.d.ts:315</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Closes a uSockets listen socket.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>listenSocket: <a href="interfaces/us_listen_socket.html" class="tsd-signature-type" data-tsd-kind="Interface">us_listen_socket</a></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-function"><a id="us_socket_local_port" class="tsd-anchor"></a><h3>us_<wbr/>socket_<wbr/>local_<wbr/>port</h3><ul class="tsd-signatures tsd-kind-function"><li class="tsd-signature tsd-kind-icon">us_<wbr/>socket_<wbr/>local_<wbr/>port<span class="tsd-signature-symbol">(</span>socket<span class="tsd-signature-symbol">: </span><a href="interfaces/us_socket.html" class="tsd-signature-type" data-tsd-kind="Interface">us_socket</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/uNetworking/uWebSockets.js/blob/master/docs/index.d.ts#L318">index.d.ts:318</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Gets local port of socket (or listenSocket) or -1.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>socket: <a href="interfaces/us_socket.html" class="tsd-signature-type" data-tsd-kind="Interface">us_socket</a></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4></li></ul></section></section></div><div class="col-4 col-menu menu-sticky-wrap menu-highlight"><nav class="tsd-navigation primary"><ul><li class="current"><a href="index.html">Exports</a></li></ul></nav><nav class="tsd-navigation secondary menu-sticky"><ul><li class="tsd-kind-enum"><a href="enums/ListenOptions.html" class="tsd-kind-icon">Listen<wbr/>Options</a></li><li class="tsd-kind-interface"><a href="interfaces/AppOptions.html" class="tsd-kind-icon">App<wbr/>Options</a></li><li class="tsd-kind-interface"><a href="interfaces/HttpRequest.html" class="tsd-kind-icon">Http<wbr/>Request</a></li><li class="tsd-kind-interface"><a href="interfaces/HttpResponse.html" class="tsd-kind-icon">Http<wbr/>Response</a></li><li class="tsd-kind-interface"><a href="interfaces/MultipartField.html" class="tsd-kind-icon">Multipart<wbr/>Field</a></li><li class="tsd-kind-interface"><a href="interfaces/TemplatedApp.html" class="tsd-kind-icon">Templated<wbr/>App</a></li><li class="tsd-kind-interface"><a href="interfaces/WebSocket.html" class="tsd-kind-icon">Web<wbr/>Socket</a></li><li class="tsd-kind-interface"><a href="interfaces/WebSocketBehavior.html" class="tsd-kind-icon">Web<wbr/>Socket<wbr/>Behavior</a></li><li class="tsd-kind-interface"><a href="interfaces/us_listen_socket.html" class="tsd-kind-icon">us_<wbr/>listen_<wbr/>socket</a></li><li class="tsd-kind-interface"><a href="interfaces/us_socket.html" class="tsd-kind-icon">us_<wbr/>socket</a></li><li class="tsd-kind-interface"><a href="interfaces/us_socket_context_t.html" class="tsd-kind-icon">us_<wbr/>socket_<wbr/>context_<wbr/>t</a></li><li class="tsd-kind-type-alias"><a href="index.html#CompressOptions" class="tsd-kind-icon">Compress<wbr/>Options</a></li><li class="tsd-kind-type-alias"><a href="index.html#RecognizedString" class="tsd-kind-icon">Recognized<wbr/>String</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_COMPRESSOR_128KB" class="tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>128KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_COMPRESSOR_16KB" class="tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>16KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_COMPRESSOR_256KB" class="tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>256KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_COMPRESSOR_32KB" class="tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>32KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_COMPRESSOR_3KB" class="tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>3KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_COMPRESSOR_4KB" class="tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>4KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_COMPRESSOR_64KB" class="tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>64KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_COMPRESSOR_8KB" class="tsd-kind-icon">DEDICATED_<wbr/>COMPRESSOR_<wbr/>8KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_DECOMPRESSOR" class="tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_DECOMPRESSOR_16KB" class="tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>16KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_DECOMPRESSOR_1KB" class="tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>1KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_DECOMPRESSOR_2KB" class="tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>2KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_DECOMPRESSOR_32KB" class="tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>32KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_DECOMPRESSOR_4KB" class="tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>4KB</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_DECOMPRESSOR_512B" class="tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>512B</a></li><li class="tsd-kind-variable"><a href="index.html#DEDICATED_DECOMPRESSOR_8KB" class="tsd-kind-icon">DEDICATED_<wbr/>DECOMPRESSOR_<wbr/>8KB</a></li><li class="tsd-kind-variable"><a href="index.html#DISABLED" class="tsd-kind-icon">DISABLED</a></li><li class="tsd-kind-variable"><a href="index.html#SHARED_COMPRESSOR" class="tsd-kind-icon">SHARED_<wbr/>COMPRESSOR</a></li><li class="tsd-kind-variable"><a href="index.html#SHARED_DECOMPRESSOR" class="tsd-kind-icon">SHARED_<wbr/>DECOMPRESSOR</a></li><li class="tsd-kind-function"><a href="index.html#App" class="tsd-kind-icon">App</a></li><li class="tsd-kind-function"><a href="index.html#SSLApp" class="tsd-kind-icon">SSLApp</a></li><li class="tsd-kind-function"><a href="index.html#getParts" class="tsd-kind-icon">get<wbr/>Parts</a></li><li class="tsd-kind-function"><a href="index.html#us_listen_socket_close" class="tsd-kind-icon">us_<wbr/>listen_<wbr/>socket_<wbr/>close</a></li><li class="tsd-kind-function"><a href="index.html#us_socket_local_port" class="tsd-kind-icon">us_<wbr/>socket_<wbr/>local_<wbr/>port</a></li></ul></nav></div></div></div><footer class="with-border-bottom"><div class="container"><h2>Legend</h2><div class="tsd-legend-group"><ul class="tsd-legend"><li class="tsd-kind-property tsd-parent-kind-interface"><span class="tsd-kind-icon">Property</span></li><li class="tsd-kind-method tsd-parent-kind-interface"><span class="tsd-kind-icon">Method</span></li></ul></div><h2>Settings</h2><p>Theme <select id="theme"><option value="os">OS</option><option value="light">Light</option><option value="dark">Dark</option></select></p></div></footer><div class="container tsd-generator"><p>Generated using <a href="https://typedoc.org/" target="_blank">TypeDoc</a></p></div><div class="overlay"></div><script src="assets/main.js"></script></body></html>