59 lines
37 KiB
HTML
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.
|
|
"String" does not have to mean "text", it can also be "binary".</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'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> |