mirror of
https://github.com/c-cube/ezcurl.git
synced 2026-01-28 12:24:51 -05:00
57 lines
23 KiB
HTML
57 lines
23 KiB
HTML
<!DOCTYPE html>
|
||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Ezcurl_lwt (ezcurl-lwt.Ezcurl_lwt)</title><meta charset="utf-8"/><link rel="stylesheet" href="../../odoc.support/odoc.css"/><meta name="generator" content="odoc 3.1.0"/><meta name="viewport" content="width=device-width,initial-scale=1.0"/><script src="../../odoc.support/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">Index</a> » <a href="../index.html">ezcurl-lwt</a> » Ezcurl_lwt</nav><header class="odoc-preamble"><h1>Module <code><span>Ezcurl_lwt</span></code></h1></header><div class="odoc-content"><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <span class="keyword">module</span> <span class="keyword">type</span> <span class="keyword">of</span> <span class="keyword">struct</span> <span class="keyword">include</span> <a href="../../ezcurl/Ezcurl_core/index.html">Ezcurl_core</a> <span class="keyword">end</span></span></code></summary><div class="odoc-spec"><div class="spec module anchored" id="module-Config"><a href="#module-Config" class="anchor"></a><code><span><span class="keyword">module</span> Config</span><span> = <a href="../../ezcurl/Ezcurl_core/Config/index.html">Ezcurl_core.Config</a></span></code></div><div class="spec-doc"><p>Configuration for the client.</p></div></div><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 class="keyword">private</span> <a href="../../ezcurl/Ezcurl_core/index.html#type-t">Ezcurl_core.t</a></span><span> = </span><span>{</span></code><ol><li id="type-t.curl" class="def record field anchored"><a href="#type-t.curl" class="anchor"></a><code><span>curl : <span class="xref-unresolved">Curl</span>.t;</span></code></li></ol><code><span>}</span></code></div><div class="spec-doc"><p>A client, i.e. a cURL instance. The wrapping record has been present since NEXT_RELEASE</p></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">?set_opts</span>:<span>(<span><span class="xref-unresolved">Curl</span>.t <span class="arrow">-></span></span> unit)</span> <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?cookiejar_file</span>:string <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?enable_session_cookies</span>:bool <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>Create a new client.</p><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">set_opts</span> <p>called before returning the client, to set options</p></li></ul><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">cookiejar_file</span> <p>if provided, tell curl to use the given file path to store/load cookies (since NEXT_RELEASE)</p></li></ul><ul class="at-tags"><li class="parameter"><span class="at-tag">parameter</span> <span class="value">enable_session_cookies</span> <p>if provided, enable cookie handling in curl so it store/load cookies (since NEXT_RELEASE)</p></li></ul></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-delete"><a href="#val-delete" class="anchor"></a><code><span><span class="keyword">val</span> delete : <span><a href="#type-t">t</a> <span class="arrow">-></span></span> unit</span></code></div><div class="spec-doc"><p>Delete the client. It cannot be used anymore.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-with_client"><a href="#val-with_client" class="anchor"></a><code><span><span class="keyword">val</span> with_client : <span><span class="optlabel">?set_opts</span>:<span>(<span><span class="xref-unresolved">Curl</span>.t <span class="arrow">-></span></span> unit)</span> <span class="arrow">-></span></span> <span><span>(<span><a href="#type-t">t</a> <span class="arrow">-></span></span> <span class="type-var">'a</span>)</span> <span class="arrow">-></span></span> <span class="type-var">'a</span></span></code></div><div class="spec-doc"><p>Make a temporary client, call the function with it, then cleanup.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-set_no_signal"><a href="#val-set_no_signal" class="anchor"></a><code><span><span class="keyword">val</span> set_no_signal : <span>bool <span class="arrow">-></span></span> unit</span></code></div><div class="spec-doc"><p>Set no_signal default value for each new client instance. Default is <code>true</code>. See <code>CURLOPT_NOSIGNAL</code>.</p><ul class="at-tags"><li class="since"><span class="at-tag">since</span> NEXT_RELEASE</li></ul></div></div><div class="odoc-spec"><div class="spec module anchored" id="module-Cookies"><a href="#module-Cookies" class="anchor"></a><code><span><span class="keyword">module</span> Cookies</span><span> = <a href="../../ezcurl/Ezcurl_core/Cookies/index.html">Ezcurl_core.Cookies</a></span></code></div><div class="spec-doc"><p>Cookie handling.</p></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-response_info"><a href="#type-response_info" class="anchor"></a><code><span><span class="keyword">type</span> response_info</span><span> = <a href="../../ezcurl/Ezcurl_core/index.html#type-response_info">Ezcurl_core.response_info</a></span><span> = </span><span>{</span></code><ol><li id="type-response_info.ri_response_time" class="def record field anchored"><a href="#type-response_info.ri_response_time" class="anchor"></a><code><span>ri_response_time : float;</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>Total time (in seconds) for the request/response pair. See <code>Curl.get_totaltime</code>.</p><span class="comment-delim">*)</span></div></li><li id="type-response_info.ri_redirect_count" class="def record field anchored"><a href="#type-response_info.ri_redirect_count" class="anchor"></a><code><span>ri_redirect_count : int;</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>Number of redirects cURL followed. See <code>Curl.get_redirectcount</code>.</p><span class="comment-delim">*)</span></div></li></ol><code><span>}</span></code></div><div class="spec-doc"><p>Metadata about a response from the server.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-pp_response_info"><a href="#val-pp_response_info" class="anchor"></a><code><span><span class="keyword">val</span> pp_response_info : <span><span class="xref-unresolved">Stdlib</span>.Format.formatter <span class="arrow">-></span></span> <span><a href="#type-response_info">response_info</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-string_of_response_info"><a href="#val-string_of_response_info" class="anchor"></a><code><span><span class="keyword">val</span> string_of_response_info : <span><a href="#type-response_info">response_info</a> <span class="arrow">-></span></span> string</span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-response"><a href="#type-response" class="anchor"></a><code><span><span class="keyword">type</span> <span>'body response</span></span><span> = <span><span class="type-var">'body</span> <a href="../../ezcurl/Ezcurl_core/index.html#type-response">Ezcurl_core.response</a></span></span><span> = </span><span>{</span></code><ol><li id="type-response.code" class="def record field anchored"><a href="#type-response.code" class="anchor"></a><code><span>code : int;</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>Response code. See https://developer.mozilla.org/en-US/docs/Web/HTTP/Status</p><span class="comment-delim">*)</span></div></li><li id="type-response.headers" class="def record field anchored"><a href="#type-response.headers" class="anchor"></a><code><span>headers : <span><span>(string * string)</span> list</span>;</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>Response headers</p><span class="comment-delim">*)</span></div></li><li id="type-response.body" class="def record field anchored"><a href="#type-response.body" class="anchor"></a><code><span>body : <span class="type-var">'body</span>;</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>Response body, or <code>""</code></p><span class="comment-delim">*)</span></div></li><li id="type-response.info" class="def record field anchored"><a href="#type-response.info" class="anchor"></a><code><span>info : <a href="#type-response_info">response_info</a>;</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>Information about the response</p><span class="comment-delim">*)</span></div></li></ol><code><span>}</span></code></div><div class="spec-doc"><p>Response for a given request.</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-pp_response_with"><a href="#val-pp_response_with" class="anchor"></a><code><span><span class="keyword">val</span> pp_response_with :
|
||
<span><span>(<span><span class="xref-unresolved">Stdlib</span>.Format.formatter <span class="arrow">-></span></span> <span><span class="type-var">'a</span> <span class="arrow">-></span></span> unit)</span> <span class="arrow">-></span></span>
|
||
<span><span class="xref-unresolved">Stdlib</span>.Format.formatter <span class="arrow">-></span></span>
|
||
<span><span><span class="type-var">'a</span> <a href="#type-response">response</a></span> <span class="arrow">-></span></span>
|
||
unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-pp_response"><a href="#val-pp_response" class="anchor"></a><code><span><span class="keyword">val</span> pp_response : <span><span class="xref-unresolved">Stdlib</span>.Format.formatter <span class="arrow">-></span></span> <span><span>string <a href="#type-response">response</a></span> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-string_of_response"><a href="#val-string_of_response" class="anchor"></a><code><span><span class="keyword">val</span> string_of_response : <span><span>string <a href="#type-response">response</a></span> <span class="arrow">-></span></span> string</span></code></div></div><div class="odoc-spec"><div class="spec type anchored" id="type-meth"><a href="#type-meth" class="anchor"></a><code><span><span class="keyword">type</span> meth</span><span> = <a href="../../ezcurl/Ezcurl_core/index.html#type-meth">Ezcurl_core.meth</a></span><span> = </span></code><ol><li id="type-meth.GET" class="def variant constructor anchored"><a href="#type-meth.GET" class="anchor"></a><code><span>| </span><span><span class="constructor">GET</span></span></code></li><li id="type-meth.POST" class="def variant constructor anchored"><a href="#type-meth.POST" class="anchor"></a><code><span>| </span><span><span class="constructor">POST</span> <span class="keyword">of</span> <span><span class="xref-unresolved">Curl</span>.curlHTTPPost list</span></span></code></li><li id="type-meth.PUT" class="def variant constructor anchored"><a href="#type-meth.PUT" class="anchor"></a><code><span>| </span><span><span class="constructor">PUT</span></span></code></li><li id="type-meth.DELETE" class="def variant constructor anchored"><a href="#type-meth.DELETE" class="anchor"></a><code><span>| </span><span><span class="constructor">DELETE</span></span></code></li><li id="type-meth.HEAD" class="def variant constructor anchored"><a href="#type-meth.HEAD" class="anchor"></a><code><span>| </span><span><span class="constructor">HEAD</span></span></code></li><li id="type-meth.CONNECT" class="def variant constructor anchored"><a href="#type-meth.CONNECT" class="anchor"></a><code><span>| </span><span><span class="constructor">CONNECT</span></span></code></li><li id="type-meth.OPTIONS" class="def variant constructor anchored"><a href="#type-meth.OPTIONS" class="anchor"></a><code><span>| </span><span><span class="constructor">OPTIONS</span></span></code></li><li id="type-meth.TRACE" class="def variant constructor anchored"><a href="#type-meth.TRACE" class="anchor"></a><code><span>| </span><span><span class="constructor">TRACE</span></span></code></li><li id="type-meth.PATCH" class="def variant constructor anchored"><a href="#type-meth.PATCH" class="anchor"></a><code><span>| </span><span><span class="constructor">PATCH</span></span></code></li></ol></div><div class="spec-doc"><p>The <a href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods">HTTP method</a> to use</p></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-pp_meth"><a href="#val-pp_meth" class="anchor"></a><code><span><span class="keyword">val</span> pp_meth : <span><span class="xref-unresolved">Stdlib</span>.Format.formatter <span class="arrow">-></span></span> <span><a href="#type-meth">meth</a> <span class="arrow">-></span></span> unit</span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-string_of_meth"><a href="#val-string_of_meth" class="anchor"></a><code><span><span class="keyword">val</span> string_of_meth : <span><a href="#type-meth">meth</a> <span class="arrow">-></span></span> string</span></code></div></div><div class="odoc-spec"><div class="spec module-type anchored" id="module-type-IO"><a href="#module-type-IO" class="anchor"></a><code><span><span class="keyword">module</span> <span class="keyword">type</span> IO</span><span> = <a href="../../ezcurl/Ezcurl_core/module-type-IO/index.html">Ezcurl_core.IO</a></span></code></div></div><div class="odoc-spec"><div class="spec module-type anchored" id="module-type-S"><a href="#module-type-S" class="anchor"></a><code><span><span class="keyword">module</span> <span class="keyword">type</span> S</span><span> = <a href="../../ezcurl/Ezcurl_core/module-type-S/index.html">Ezcurl_core.S</a></span></code></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> Make</span><span> = <a href="../../ezcurl/Ezcurl_core/Make/index.html">Ezcurl_core.Make</a></span></code></div></div></details></div><div class="odoc-include"><details open="open"><summary class="spec include"><code><span><span class="keyword">include</span> <span class="keyword">sig</span> ... <span class="keyword">end</span></span></code></summary><div class="odoc-spec"><div class="spec type anchored" id="type-io"><a href="#type-io" class="anchor"></a><code><span><span class="keyword">type</span> <span>'a io</span></span><span> = <span><span class="type-var">'a</span> <span class="xref-unresolved">Lwt</span>.t</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-http"><a href="#val-http" class="anchor"></a><code><span><span class="keyword">val</span> http :
|
||
<span><span class="optlabel">?tries</span>:int <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?client</span>:<a href="../../ezcurl/Ezcurl_core/index.html#type-t">Ezcurl_core.t</a> <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?config</span>:<a href="../../ezcurl/Ezcurl_core/Config/index.html#type-t">Ezcurl_core.Config.t</a> <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?range</span>:string <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?content</span>:<span>[ <span>`String of string</span> <span><span>| `Write</span> of <span>bytes <span class="arrow">-></span></span> <span>int <span class="arrow">-></span></span> int</span> ]</span> <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?headers</span>:<span><span>(string * string)</span> list</span> <span class="arrow">-></span></span>
|
||
<span><span class="label">url</span>:string <span class="arrow">-></span></span>
|
||
<span><span class="label">meth</span>:<a href="../../ezcurl/Ezcurl_core/index.html#type-meth">Ezcurl_core.meth</a> <span class="arrow">-></span></span>
|
||
<span>unit <span class="arrow">-></span></span>
|
||
<span><span><span>(<span>string <a href="../../ezcurl/Ezcurl_core/index.html#type-response">Ezcurl_core.response</a></span>, <span class="xref-unresolved">Curl</span>.curlCode * string)</span> <span class="xref-unresolved">Stdlib</span>.result</span> <a href="#type-io">io</a></span></span></code></div></div><div class="odoc-spec"><div class="spec class-type anchored" id="class-type-input_stream"><a href="#class-type-input_stream" class="anchor"></a><code><span><span class="keyword">class</span> <span class="keyword">type</span> </span><span><a href="class-type-input_stream/index.html">input_stream</a></span><span> = <span class="keyword">object</span> ... <span class="keyword">end</span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-http_stream"><a href="#val-http_stream" class="anchor"></a><code><span><span class="keyword">val</span> http_stream :
|
||
<span><span class="optlabel">?tries</span>:int <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?client</span>:<a href="../../ezcurl/Ezcurl_core/index.html#type-t">Ezcurl_core.t</a> <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?config</span>:<a href="../../ezcurl/Ezcurl_core/Config/index.html#type-t">Ezcurl_core.Config.t</a> <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?range</span>:string <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?content</span>:<span>[ <span>`String of string</span> <span><span>| `Write</span> of <span>bytes <span class="arrow">-></span></span> <span>int <span class="arrow">-></span></span> int</span> ]</span> <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?headers</span>:<span><span>(string * string)</span> list</span> <span class="arrow">-></span></span>
|
||
<span><span class="label">url</span>:string <span class="arrow">-></span></span>
|
||
<span><span class="label">meth</span>:<a href="../../ezcurl/Ezcurl_core/index.html#type-meth">Ezcurl_core.meth</a> <span class="arrow">-></span></span>
|
||
<span><span class="label">write_into</span>:<a href="class-type-input_stream/index.html">input_stream</a> <span class="arrow">-></span></span>
|
||
<span>unit <span class="arrow">-></span></span>
|
||
<span><span><span>(<span>unit <a href="../../ezcurl/Ezcurl_core/index.html#type-response">Ezcurl_core.response</a></span>, <span class="xref-unresolved">Curl</span>.curlCode * string)</span> <span class="xref-unresolved">Stdlib</span>.result</span> <a href="#type-io">io</a></span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-get"><a href="#val-get" class="anchor"></a><code><span><span class="keyword">val</span> get :
|
||
<span><span class="optlabel">?tries</span>:int <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?client</span>:<a href="../../ezcurl/Ezcurl_core/index.html#type-t">Ezcurl_core.t</a> <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?config</span>:<a href="../../ezcurl/Ezcurl_core/Config/index.html#type-t">Ezcurl_core.Config.t</a> <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?range</span>:string <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?headers</span>:<span><span>(string * string)</span> list</span> <span class="arrow">-></span></span>
|
||
<span><span class="label">url</span>:string <span class="arrow">-></span></span>
|
||
<span>unit <span class="arrow">-></span></span>
|
||
<span><span><span>(<span>string <a href="../../ezcurl/Ezcurl_core/index.html#type-response">Ezcurl_core.response</a></span>, <span class="xref-unresolved">Curl</span>.curlCode * string)</span> <span class="xref-unresolved">Stdlib</span>.result</span> <a href="#type-io">io</a></span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-put"><a href="#val-put" class="anchor"></a><code><span><span class="keyword">val</span> put :
|
||
<span><span class="optlabel">?tries</span>:int <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?client</span>:<a href="../../ezcurl/Ezcurl_core/index.html#type-t">Ezcurl_core.t</a> <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?config</span>:<a href="../../ezcurl/Ezcurl_core/Config/index.html#type-t">Ezcurl_core.Config.t</a> <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?headers</span>:<span><span>(string * string)</span> list</span> <span class="arrow">-></span></span>
|
||
<span><span class="label">url</span>:string <span class="arrow">-></span></span>
|
||
<span><span class="label">content</span>:<span>[ <span>`String of string</span> <span><span>| `Write</span> of <span>bytes <span class="arrow">-></span></span> <span>int <span class="arrow">-></span></span> int</span> ]</span> <span class="arrow">-></span></span>
|
||
<span>unit <span class="arrow">-></span></span>
|
||
<span><span><span>(<span>string <a href="../../ezcurl/Ezcurl_core/index.html#type-response">Ezcurl_core.response</a></span>, <span class="xref-unresolved">Curl</span>.curlCode * string)</span> <span class="xref-unresolved">Stdlib</span>.result</span> <a href="#type-io">io</a></span></span></code></div></div><div class="odoc-spec"><div class="spec value anchored" id="val-post"><a href="#val-post" class="anchor"></a><code><span><span class="keyword">val</span> post :
|
||
<span><span class="optlabel">?tries</span>:int <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?client</span>:<a href="../../ezcurl/Ezcurl_core/index.html#type-t">Ezcurl_core.t</a> <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?config</span>:<a href="../../ezcurl/Ezcurl_core/Config/index.html#type-t">Ezcurl_core.Config.t</a> <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?headers</span>:<span><span>(string * string)</span> list</span> <span class="arrow">-></span></span>
|
||
<span><span class="optlabel">?content</span>:<span>[ <span>`String of string</span> <span><span>| `Write</span> of <span>bytes <span class="arrow">-></span></span> <span>int <span class="arrow">-></span></span> int</span> ]</span> <span class="arrow">-></span></span>
|
||
<span><span class="label">params</span>:<span><span class="xref-unresolved">Curl</span>.curlHTTPPost list</span> <span class="arrow">-></span></span>
|
||
<span><span class="label">url</span>:string <span class="arrow">-></span></span>
|
||
<span>unit <span class="arrow">-></span></span>
|
||
<span><span><span>(<span>string <a href="../../ezcurl/Ezcurl_core/index.html#type-response">Ezcurl_core.response</a></span>, <span class="xref-unresolved">Curl</span>.curlCode * string)</span> <span class="xref-unresolved">Stdlib</span>.result</span> <a href="#type-io">io</a></span></span></code></div></div></details></div></div></body></html>
|