mirror of
https://github.com/ocaml-tracing/ocaml-opentelemetry.git
synced 2026-03-09 04:17:56 -04:00
9 lines
9.2 KiB
HTML
9 lines
9.2 KiB
HTML
<!DOCTYPE html>
|
||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Response (cohttp.Cohttp.Response)</title><meta charset="utf-8"/><link rel="stylesheet" href="../../../_odoc-theme/odoc.css"/><meta name="generator" content="odoc 2.4.4"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../../highlight.pack.js"></script><script>hljs.initHighlightingOnLoad();</script></head><body class="odoc"><nav class="odoc-nav"><a href="../index.html">Up</a> – <a href="../../index.html">cohttp</a> » <a href="../index.html">Cohttp</a> » Response</nav><header class="odoc-preamble"><h1>Module <code><span>Cohttp.Response</span></code></h1><p>HTTP/1.1 response handling</p></header><div class="odoc-content"><div class="odoc-include"><div class="spec-doc"><p>This contains the metadata for a HTTP/1.1 response header, including the <a href="#val-encoding"><code>encoding</code></a>, <a href="#val-headers"><code>headers</code></a>, <a href="#val-version"><code>version</code></a>, <a href="#val-status"><code>status</code></a> code and whether to <a href="#val-flush"><code>flush</code></a> the connection after every body chunk (useful for server-side events and other long-lived connection protocols). The body is handled by the separate <a href="../S/index.html"><code>S</code></a> module type, as it is dependent on the IO implementation.</p><p>The interface exposes a <code>fieldslib</code> interface which provides individual accessor functions for each of the records below. It also provides <code>sexp</code> serializers to convert to-and-from an <code>Core.Std.Sexp.t</code>.</p></div><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../S/module-type-Response/index.html">S.Response</a></span></code></summary><div class="odoc-spec"><div class="spec type anchored" id="type-t"><a href="#type-t" class="anchor"></a><code><span><span class="keyword">type</span> t</span><span> = </span><span>{</span></code><ol><li id="type-t.encoding" class="def record field anchored"><a href="#type-t.encoding" class="anchor"></a><code><span>encoding : <a href="../Transfer/index.html#type-encoding">Transfer.encoding</a>;</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>Transfer encoding of this HTTP response</p><span class="comment-delim">*)</span></div></li><li id="type-t.headers" class="def record field anchored"><a href="#type-t.headers" class="anchor"></a><code><span>headers : <a href="../Header/index.html#type-t">Header.t</a>;</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>response HTTP headers</p><span class="comment-delim">*)</span></div></li><li id="type-t.version" class="def record field anchored"><a href="#type-t.version" class="anchor"></a><code><span>version : <a href="../Code/index.html#type-version">Code.version</a>;</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>(** HTTP version, usually 1.1 *)</p><span class="comment-delim">*)</span></div></li><li id="type-t.status" class="def record field anchored"><a href="#type-t.status" class="anchor"></a><code><span>status : <a href="../Code/index.html#type-status_code">Code.status_code</a>;</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>HTTP status code of the response</p><span class="comment-delim">*)</span></div></li><li id="type-t.flush" class="def record field anchored"><a href="#type-t.flush" class="anchor"></a><code><span>flush : bool;</span></code></li></ol><code><span>}</span></code></div></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <a href="../../../sexplib0/Sexplib0/Sexpable/module-type-S/index.html">Sexplib0.Sexpable.S</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../../../sexplib0/Sexplib0/Sexpable/module-type-S/index.html#type-t">t</a> := <a href="#type-t">t</a></span></span></code></summary><div class="odoc-spec"><div class="spec value anchored" id="val-t_of_sexp"><a href="#val-t_of_sexp" class="anchor"></a><code><span><span class="keyword">val</span> t_of_sexp : <span><a href="../../../sexplib0/Sexplib0/Sexp/index.html#type-t">Sexplib0.Sexp.t</a> <span class="arrow">-></span></span> <a href="#type-t">t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-sexp_of_t"><a href="#val-sexp_of_t" class="anchor"></a><code><span><span class="keyword">val</span> sexp_of_t : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <a href="../../../sexplib0/Sexplib0/Sexp/index.html#type-t">Sexplib0.Sexp.t</a></span></code></div></div></details></div><div class="odoc-spec"><div class="spec value anchored" id="val-encoding"><a href="#val-encoding" class="anchor"></a><code><span><span class="keyword">val</span> encoding : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <a href="../Transfer/index.html#type-encoding">Transfer.encoding</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-headers"><a href="#val-headers" class="anchor"></a><code><span><span class="keyword">val</span> headers : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <a href="../Header/index.html#type-t">Header.t</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-version"><a href="#val-version" class="anchor"></a><code><span><span class="keyword">val</span> version : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <a href="../Code/index.html#type-version">Code.version</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-status"><a href="#val-status" class="anchor"></a><code><span><span class="keyword">val</span> status : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <a href="../Code/index.html#type-status_code">Code.status_code</a></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-flush"><a href="#val-flush" class="anchor"></a><code><span><span class="keyword">val</span> flush : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> bool</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-compare"><a href="#val-compare" class="anchor"></a><code><span><span class="keyword">val</span> compare : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span><a href="#type-t">t</a> <span class="arrow">-></span></span> int</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-make"><a href="#val-make" class="anchor"></a><code><span><span class="keyword">val</span> make :
|
||
<span><span class="optlabel">?version</span>:<a href="../Code/index.html#type-version">Code.version</a> <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?status</span>:<a href="../Code/index.html#type-status_code">Code.status_code</a> <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?flush</span>:bool <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?encoding</span>:<a href="../Transfer/index.html#type-encoding">Transfer.encoding</a> <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?headers</span>:<a href="../Header/index.html#type-t">Header.t</a> <span class="arrow">-></span></span>
|
||
<span>unit <span class="arrow">-></span></span>
|
||
<a href="#type-t">t</a></span></code></div><div class="spec-doc"><p>The response creates by <code>make ~encoding ~headers ()</code> has an encoding value determined from the content of <code>headers</code> or if no proper header is present, using the value of <code>encoding</code>. Checked headers are "content-length", "content-range" and "transfer-encoding". The default value of <code>encoding</code> is chunked.</p></div></div></details></div><div class="odoc-spec"><div class="spec value anchored" id="val-pp_hum"><a href="#val-pp_hum" class="anchor"></a><code><span><span class="keyword">val</span> pp_hum : <span><a href="../../../ocaml/Stdlib/Format/index.html#type-formatter">Stdlib.Format.formatter</a> <span class="arrow">-></span></span> <span><a href="#type-t">t</a> <span class="arrow">-></span></span> unit</span></code></div><div class="spec-doc"><p>Human-readable output, used by the toplevel printer</p></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Make"><a href="#module-Make" class="anchor"></a><code><span><span class="keyword">module</span> <a href="Make/index.html">Make</a></span><span> (<a href="Make/argument-1-IO/index.html">IO</a> : <a href="../S/module-type-IO/index.html">S.IO</a>) : <a href="../S/module-type-Http_io/index.html">S.Http_io</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <a href="../S/module-type-Http_io/index.html#type-t">t</a> = <a href="#type-t">t</a></span> <span class="keyword">and</span> <span><span class="keyword">module</span> <a href="../S/module-type-Http_io/IO/index.html">IO</a> = <a href="Make/argument-1-IO/index.html">IO</a></span></span></code></div><div class="spec-doc"><p>Functor to construct the IO-specific response handling function</p></div></div></div></body></html>
|