1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112
|
<html>
<head>
<link rel="stylesheet" href="style.css" type="text/css">
<link rel="Start" href="index.html">
<link rel="Up" href="Http_client.html">
<link title="Index of types" rel=Appendix href="index_types.html">
<link title="Index of exceptions" rel=Appendix href="index_exceptions.html">
<link title="Index of values" rel=Appendix href="index_values.html">
<link title="Index of class methods" rel=Appendix href="index_methods.html">
<link title="Index of classes" rel=Appendix href="index_classes.html">
<link title="Index of class types" rel=Appendix href="index_class_types.html">
<link title="Index of modules" rel=Appendix href="index_modules.html">
<link title="Ftp_client" rel="Chapter" href="Ftp_client.html">
<link title="Ftp_data_endpoint" rel="Chapter" href="Ftp_data_endpoint.html">
<link title="Http_client" rel="Chapter" href="Http_client.html">
<link title="Http_client_mt" rel="Chapter" href="Http_client_mt.html">
<link title="Telnet_client" rel="Chapter" href="Telnet_client.html"><title>The Netclient Manual : Http_client.Convenience</title>
</head>
<body>
<div class="navbar"> <a href="Http_client.html">Up</a>
</div>
<center><h1>Module <a href="type_Http_client.Convenience.html">Http_client.Convenience</a></h1></center>
<br>
<pre><span class="keyword">module</span> Convenience: <code class="code">sig</code> <a href="Http_client.Convenience.html">..</a> <code class="code">end</code></pre><hr width="100%">
<br>
Convenience module for simple applications<br>
<br>
Do <code class="code">open Http_client.Convenience</code> for simple applications.<br>
<br>
The functions of this module share the following behaviour:
<p>
The environment variables <code class="code">http_proxy</code> and <code class="code">no_proxy</code> determine
the proxy settings. <code class="code">http_proxy</code> must be an http-URL that contains
the proxy's name, its port, and optionally user and password.
E.g. "http://eric:ericspassword@proxy:8080/".
The variable <code class="code">no_proxy</code> is a comma-separated list of hosts and
domains for which no proxy must be used.
E.g. "localhost, sun, moon, .intra.net"
<p>
There is a default behaviour for authentication. Both "basic" and
"digest" methods are enabled. Two global variables, <code class="code">http_user</code> and
<code class="code">http_password</code> set the user and password if the URL does not specify
them. In the case that user and password are included in the URL,
these values are always
used.
<p>
There is a default error behaviour. If a request fails, it is
automatically repeated. The variable <code class="code">http_trials</code> specifies the number
of times a request is submitted at most.
Requests are not repeated if there is a HTTP return code that indicates
a normal operating condition.
POST and DELETE requests are never repeated.<br>
<br>
<b>Thread safety</b>
<p>
The Convenience module is fully thread-safe with the exception of the
exported variables (http_trials, http_user, and http_password). Note
that all threads share the same pipeline, and access to the pipeline
is serialized.
The latter simply means that it always works, but that threads may
block each other (i.e. the program slows down if more than one thread
wants to open http connections at the same time).<br>
<pre><span class="keyword">val</span> <a name="VALhttp_trials"></a>http_trials : <code class="type">int Pervasives.ref</code></pre><div class="info">
number of times every request is tried. Default: 3<br>
</div>
<pre><span class="keyword">val</span> <a name="VALhttp_user"></a>http_user : <code class="type">string Pervasives.ref</code></pre><div class="info">
The default user if authentication is required<br>
</div>
<pre><span class="keyword">val</span> <a name="VALhttp_password"></a>http_password : <code class="type">string Pervasives.ref</code></pre><div class="info">
The default password if authentication is required<br>
</div>
<pre><span class="keyword">val</span> <a name="VALhttp_get_message"></a>http_get_message : <code class="type">string -> <a href="Http_client.http_call.html">Http_client.http_call</a></code></pre><div class="info">
Does a "GET" request with the given URL and returns the message<br>
</div>
<pre><span class="keyword">val</span> <a name="VALhttp_head_message"></a>http_head_message : <code class="type">string -> <a href="Http_client.http_call.html">Http_client.http_call</a></code></pre><div class="info">
Does a "HEAD" request with the given URL and returns the reply.<br>
</div>
<pre><span class="keyword">val</span> <a name="VALhttp_post_message"></a>http_post_message : <code class="type">string -> (string * string) list -> <a href="Http_client.http_call.html">Http_client.http_call</a></code></pre><div class="info">
Does a "POST" request with the given URL and returns the reply.
The list contains the parameters sent with the POST request.<br>
</div>
<pre><span class="keyword">val</span> <a name="VALhttp_put_message"></a>http_put_message : <code class="type">string -> string -> <a href="Http_client.http_call.html">Http_client.http_call</a></code></pre><div class="info">
Does a "PUT" request with the given URL and returns the reply.
The second argument contains the contents to be put.<br>
</div>
<pre><span class="keyword">val</span> <a name="VALhttp_delete_message"></a>http_delete_message : <code class="type">string -> <a href="Http_client.http_call.html">Http_client.http_call</a></code></pre><div class="info">
Does a "DELETE" request with the given URL and returns the reply.<br>
</div>
<pre><span class="keyword">val</span> <a name="VALhttp_get"></a>http_get : <code class="type">string -> string</code></pre><div class="info">
Does a "GET" request with the given URL and returns the message
body<br>
</div>
<pre><span class="keyword">val</span> <a name="VALhttp_post"></a>http_post : <code class="type">string -> (string * string) list -> string</code></pre><div class="info">
Does a "POST" request with the given URL and returns the response body.
The list contains the parameters send with the POST request.<br>
</div>
<pre><span class="keyword">val</span> <a name="VALhttp_put"></a>http_put : <code class="type">string -> string -> string</code></pre><div class="info">
Does a "PUT" request with the given URL and returns the response body.
The second argument contains the contents to be put.<br>
</div>
<pre><span class="keyword">val</span> <a name="VALhttp_delete"></a>http_delete : <code class="type">string -> string</code></pre><div class="info">
Does a "DELETE" request with the given URL and returns the response
body.<br>
</div>
<pre><span class="keyword">val</span> <a name="VALhttp_verbose"></a>http_verbose : <code class="type">unit -> unit</code></pre><div class="info">
Turns on debug messages on stderr.<br>
</div>
</body></html>
|