mirror of
https://github.com/c-cube/ezcurl.git
synced 2026-03-07 21:47:55 -05:00
11 lines
14 KiB
HTML
11 lines
14 KiB
HTML
<!DOCTYPE html>
|
||
<html xmlns="http://www.w3.org/1999/xhtml"><head><title>Ezcurl_core (ezcurl.Ezcurl_core)</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</a> » Ezcurl_core</nav><header class="odoc-preamble"><h1>Module <code><span>Ezcurl_core</span></code></h1><p>Core signatures and implementation</p></header><div class="odoc-content"><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> <a href="Config/index.html">Config</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></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> </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 0.3</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 0.3)</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 0.3)</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> 0.3</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> <a href="Cookies/index.html">Cookies</a></span><span> : <span class="keyword">sig</span> ... <span class="keyword">end</span></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> = </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>{</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> = </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><li id="type-meth.HTTP_CUSTOM" class="def variant constructor anchored"><a href="#type-meth.HTTP_CUSTOM" class="anchor"></a><code><span>| </span><span><span class="constructor">HTTP_CUSTOM</span> <span class="keyword">of</span> string</span></code><div class="def-doc"><span class="comment-delim">(*</span><p>Custom HTTP method (e.g., for WebDAV)</p><span class="comment-delim">*)</span></div></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> <a href="module-type-IO/index.html">IO</a></span><span> = <span class="keyword">sig</span> ... <span class="keyword">end</span></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> <a href="module-type-S/index.html">S</a></span><span> = <span class="keyword">sig</span> ... <span class="keyword">end</span></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> <a href="Make/index.html">Make</a></span><span> (<a href="Make/argument-1-IO/index.html">IO</a> : <a href="module-type-IO/index.html">IO</a>) : <a href="module-type-S/index.html">S</a> <span class="keyword">with</span> <span><span class="keyword">type</span> <span>'a <a href="module-type-S/index.html#type-io">io</a></span> = <span><span class="type-var">'a</span> <a href="Make/argument-1-IO/index.html#type-t">IO.t</a></span></span></span></code></div></div></div></body></html>
|