mirror of
https://gitlab.gnome.org/GNOME/libxml2.git
synced 2025-07-23 15:01:05 +03:00
* doc/Makefile.am doc/html/*: reverted back patch for #113521, due to #115104 and while fixing #115101 . HTML URLs must not be version dependant. Daniel
183 lines
16 KiB
HTML
183 lines
16 KiB
HTML
<html><head><meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"><title>nanohttp</title><meta name="generator" content="DocBook XSL Stylesheets V1.58.1"><style xmlns="http://www.w3.org/TR/xhtml1/transitional" type="text/css">
|
||
.synopsis, .classsynopsis {
|
||
background: #eeeeee;
|
||
border: solid 1px #aaaaaa;
|
||
padding: 0.5em;
|
||
}
|
||
.programlisting {
|
||
background: #eeeeff;
|
||
border: solid 1px #aaaaff;
|
||
padding: 0.5em;
|
||
}
|
||
.variablelist {
|
||
padding: 4px;
|
||
margin-left: 3em;
|
||
}
|
||
.navigation {
|
||
background: #ffeeee;
|
||
border: solid 1px #ffaaaa;
|
||
margin-top: 0.5em;
|
||
margin-bottom: 0.5em;
|
||
}
|
||
.navigation a {
|
||
color: #770000;
|
||
}
|
||
.navigation a:visited {
|
||
color: #550000;
|
||
}
|
||
.navigation .title {
|
||
font-size: 200%;
|
||
}
|
||
</style><link rel="home" href="index.html" title="Gnome XML Library Reference Manual"><link rel="up" href="libxml-lib.html" title="Libxml Library Reference"><link rel="previous" href="libxml-xinclude.html" title="xinclude"><link rel="next" href="libxml-nanoftp.html" title="nanoftp"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><table xmlns="http://www.w3.org/TR/xhtml1/transitional" class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2"><tr valign="middle"><td><a accesskey="p" href="libxml-xinclude.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></img></a></td><td><a accesskey="u" href="libxml-lib.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></img></a></td><td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></img></a></td><th width="100%" align="center">Gnome XML Library Reference Manual</th><td><a accesskey="n" href="libxml-nanoftp.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></img></a></td></tr></table><div class="refentry" lang="en"><a name="libxml-nanohttp"></a><div class="titlepage"></div><div class="refnamediv"><h2>nanohttp</h2><p>nanohttp — </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><pre class="synopsis">
|
||
|
||
|
||
|
||
void <a href="libxml-nanohttp.html#xmlNanoHTTPInit">xmlNanoHTTPInit</a> (void);
|
||
void <a href="libxml-nanohttp.html#xmlNanoHTTPCleanup">xmlNanoHTTPCleanup</a> (void);
|
||
void <a href="libxml-nanohttp.html#xmlNanoHTTPScanProxy">xmlNanoHTTPScanProxy</a> (const char *URL);
|
||
int <a href="libxml-nanohttp.html#xmlNanoHTTPFetch">xmlNanoHTTPFetch</a> (const char *URL,
|
||
const char *filename,
|
||
char **contentType);
|
||
void* <a href="libxml-nanohttp.html#xmlNanoHTTPMethod">xmlNanoHTTPMethod</a> (const char *URL,
|
||
const char *method,
|
||
const char *input,
|
||
char **contentType,
|
||
const char *headers,
|
||
int ilen);
|
||
void* <a href="libxml-nanohttp.html#xmlNanoHTTPMethodRedir">xmlNanoHTTPMethodRedir</a> (const char *URL,
|
||
const char *method,
|
||
const char *input,
|
||
char **contentType,
|
||
char **redir,
|
||
const char *headers,
|
||
int ilen);
|
||
void* <a href="libxml-nanohttp.html#xmlNanoHTTPOpen">xmlNanoHTTPOpen</a> (const char *URL,
|
||
char **contentType);
|
||
void* <a href="libxml-nanohttp.html#xmlNanoHTTPOpenRedir">xmlNanoHTTPOpenRedir</a> (const char *URL,
|
||
char **contentType,
|
||
char **redir);
|
||
int <a href="libxml-nanohttp.html#xmlNanoHTTPReturnCode">xmlNanoHTTPReturnCode</a> (void *ctx);
|
||
const char* <a href="libxml-nanohttp.html#xmlNanoHTTPAuthHeader">xmlNanoHTTPAuthHeader</a> (void *ctx);
|
||
int <a href="libxml-nanohttp.html#xmlNanoHTTPRead">xmlNanoHTTPRead</a> (void *ctx,
|
||
void *dest,
|
||
int len);
|
||
int <a href="libxml-nanohttp.html#xmlNanoHTTPSave">xmlNanoHTTPSave</a> (void *ctxt,
|
||
const char *filename);
|
||
void <a href="libxml-nanohttp.html#xmlNanoHTTPClose">xmlNanoHTTPClose</a> (void *ctx);
|
||
</pre></div><div class="refsect1" lang="en"><h2>Description</h2><p>
|
||
|
||
</p></div><div class="refsect1" lang="en"><h2>Details</h2><div class="refsect2" lang="en"><h3><a name="xmlNanoHTTPInit"></a>xmlNanoHTTPInit ()</h3><pre class="programlisting">void xmlNanoHTTPInit (void);</pre><p>
|
||
Initialize the HTTP protocol layer.
|
||
Currently it just checks for proxy informations</p><p>
|
||
|
||
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNanoHTTPCleanup"></a>xmlNanoHTTPCleanup ()</h3><pre class="programlisting">void xmlNanoHTTPCleanup (void);</pre><p>
|
||
Cleanup the HTTP protocol layer.</p><p>
|
||
|
||
</p></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNanoHTTPScanProxy"></a>xmlNanoHTTPScanProxy ()</h3><pre class="programlisting">void xmlNanoHTTPScanProxy (const char *URL);</pre><p>
|
||
(Re)Initialize the HTTP Proxy context by parsing the URL and finding
|
||
the protocol host port it indicates.
|
||
Should be like http://myproxy/ or http://myproxy:3128/
|
||
A NULL URL cleans up proxy informations.</p><p>
|
||
|
||
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>URL</tt></i><EFBFBD>:</span></td><td> The proxy URL used to initialize the proxy context
|
||
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNanoHTTPFetch"></a>xmlNanoHTTPFetch ()</h3><pre class="programlisting">int xmlNanoHTTPFetch (const char *URL,
|
||
const char *filename,
|
||
char **contentType);</pre><p>
|
||
This function try to fetch the indicated resource via HTTP GET
|
||
and save it's content in the file.</p><p>
|
||
|
||
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>URL</tt></i><EFBFBD>:</span></td><td> The URL to load
|
||
</td></tr><tr><td><span class="term"><i><tt>filename</tt></i><EFBFBD>:</span></td><td> the filename where the content should be saved
|
||
</td></tr><tr><td><span class="term"><i><tt>contentType</tt></i><EFBFBD>:</span></td><td> if available the Content-Type information will be
|
||
returned at that location
|
||
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>-1 in case of failure, 0 incase of success. The contentType,
|
||
if provided must be freed by the caller
|
||
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNanoHTTPMethod"></a>xmlNanoHTTPMethod ()</h3><pre class="programlisting">void* xmlNanoHTTPMethod (const char *URL,
|
||
const char *method,
|
||
const char *input,
|
||
char **contentType,
|
||
const char *headers,
|
||
int ilen);</pre><p>
|
||
This function try to open a connection to the indicated resource
|
||
via HTTP using the given <i><tt>method</tt></i>, adding the given extra headers
|
||
and the input buffer for the request content.</p><p>
|
||
|
||
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>URL</tt></i><EFBFBD>:</span></td><td> The URL to load
|
||
</td></tr><tr><td><span class="term"><i><tt>method</tt></i><EFBFBD>:</span></td><td> the HTTP method to use
|
||
</td></tr><tr><td><span class="term"><i><tt>input</tt></i><EFBFBD>:</span></td><td> the input string if any
|
||
</td></tr><tr><td><span class="term"><i><tt>contentType</tt></i><EFBFBD>:</span></td><td> the Content-Type information IN and OUT
|
||
</td></tr><tr><td><span class="term"><i><tt>headers</tt></i><EFBFBD>:</span></td><td> the extra headers
|
||
</td></tr><tr><td><span class="term"><i><tt>ilen</tt></i><EFBFBD>:</span></td><td> input length
|
||
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNanoHTTPMethodRedir"></a>xmlNanoHTTPMethodRedir ()</h3><pre class="programlisting">void* xmlNanoHTTPMethodRedir (const char *URL,
|
||
const char *method,
|
||
const char *input,
|
||
char **contentType,
|
||
char **redir,
|
||
const char *headers,
|
||
int ilen);</pre><p>
|
||
This function try to open a connection to the indicated resource
|
||
via HTTP using the given <i><tt>method</tt></i>, adding the given extra headers
|
||
and the input buffer for the request content.</p><p>
|
||
|
||
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>URL</tt></i><EFBFBD>:</span></td><td> The URL to load
|
||
</td></tr><tr><td><span class="term"><i><tt>method</tt></i><EFBFBD>:</span></td><td> the HTTP method to use
|
||
</td></tr><tr><td><span class="term"><i><tt>input</tt></i><EFBFBD>:</span></td><td> the input string if any
|
||
</td></tr><tr><td><span class="term"><i><tt>contentType</tt></i><EFBFBD>:</span></td><td> the Content-Type information IN and OUT
|
||
</td></tr><tr><td><span class="term"><i><tt>redir</tt></i><EFBFBD>:</span></td><td> the redirected URL OUT
|
||
</td></tr><tr><td><span class="term"><i><tt>headers</tt></i><EFBFBD>:</span></td><td> the extra headers
|
||
</td></tr><tr><td><span class="term"><i><tt>ilen</tt></i><EFBFBD>:</span></td><td> input length
|
||
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNanoHTTPOpen"></a>xmlNanoHTTPOpen ()</h3><pre class="programlisting">void* xmlNanoHTTPOpen (const char *URL,
|
||
char **contentType);</pre><p>
|
||
This function try to open a connection to the indicated resource
|
||
via HTTP GET.</p><p>
|
||
|
||
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>URL</tt></i><EFBFBD>:</span></td><td> The URL to load
|
||
</td></tr><tr><td><span class="term"><i><tt>contentType</tt></i><EFBFBD>:</span></td><td> if available the Content-Type information will be
|
||
returned at that location
|
||
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNanoHTTPOpenRedir"></a>xmlNanoHTTPOpenRedir ()</h3><pre class="programlisting">void* xmlNanoHTTPOpenRedir (const char *URL,
|
||
char **contentType,
|
||
char **redir);</pre><p>
|
||
This function try to open a connection to the indicated resource
|
||
via HTTP GET.</p><p>
|
||
|
||
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>URL</tt></i><EFBFBD>:</span></td><td> The URL to load
|
||
</td></tr><tr><td><span class="term"><i><tt>contentType</tt></i><EFBFBD>:</span></td><td> if available the Content-Type information will be
|
||
returned at that location
|
||
</td></tr><tr><td><span class="term"><i><tt>redir</tt></i><EFBFBD>:</span></td><td> if available the redirected URL will be returned
|
||
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNanoHTTPReturnCode"></a>xmlNanoHTTPReturnCode ()</h3><pre class="programlisting">int xmlNanoHTTPReturnCode (void *ctx);</pre><p>
|
||
Get the latest HTTP return code received</p><p>
|
||
|
||
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctx</tt></i><EFBFBD>:</span></td><td> the HTTP context
|
||
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the HTTP return code for the request.
|
||
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNanoHTTPAuthHeader"></a>xmlNanoHTTPAuthHeader ()</h3><pre class="programlisting">const char* xmlNanoHTTPAuthHeader (void *ctx);</pre><p>
|
||
Get the authentication header of an HTTP context</p><p>
|
||
|
||
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctx</tt></i><EFBFBD>:</span></td><td> the HTTP context
|
||
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the stashed value of the WWW-Authenticate or Proxy-Authenticate
|
||
header.
|
||
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNanoHTTPRead"></a>xmlNanoHTTPRead ()</h3><pre class="programlisting">int xmlNanoHTTPRead (void *ctx,
|
||
void *dest,
|
||
int len);</pre><p>
|
||
This function tries to read <i><tt>len</tt></i> bytes from the existing HTTP connection
|
||
and saves them in <i><tt>dest</tt></i>. This is a blocking call.</p><p>
|
||
|
||
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctx</tt></i><EFBFBD>:</span></td><td> the HTTP context
|
||
</td></tr><tr><td><span class="term"><i><tt>dest</tt></i><EFBFBD>:</span></td><td> a buffer
|
||
</td></tr><tr><td><span class="term"><i><tt>len</tt></i><EFBFBD>:</span></td><td> the buffer length
|
||
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>the number of byte read. 0 is an indication of an end of connection.
|
||
-1 indicates a parameter error.
|
||
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNanoHTTPSave"></a>xmlNanoHTTPSave ()</h3><pre class="programlisting">int xmlNanoHTTPSave (void *ctxt,
|
||
const char *filename);</pre><p>
|
||
This function saves the output of the HTTP transaction to a file
|
||
It closes and free the context at the end</p><p>
|
||
|
||
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctxt</tt></i><EFBFBD>:</span></td><td> the HTTP context
|
||
</td></tr><tr><td><span class="term"><i><tt>filename</tt></i><EFBFBD>:</span></td><td> the filename where the content should be saved
|
||
</td></tr><tr><td><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></td><td>-1 in case of failure, 0 incase of success.
|
||
</td></tr></tbody></table></div></div><hr xmlns="http://www.w3.org/TR/xhtml1/transitional"></hr><div class="refsect2" lang="en"><h3><a name="xmlNanoHTTPClose"></a>xmlNanoHTTPClose ()</h3><pre class="programlisting">void xmlNanoHTTPClose (void *ctx);</pre><p>
|
||
This function closes an HTTP context, it ends up the connection and
|
||
free all data related to it.</p><p>
|
||
|
||
</p><div class="variablelist"><table border="0"><col align="left" valign="top"><tbody><tr><td><span class="term"><i><tt>ctx</tt></i><EFBFBD>:</span></td><td> the HTTP context
|
||
</td></tr></tbody></table></div></div></div></div><table xmlns="http://www.w3.org/TR/xhtml1/transitional" class="navigation" width="100%" summary="Navigation footer" cellpadding="2" cellspacing="0"><tr valign="middle"><td align="left"><a accesskey="p" href="libxml-xinclude.html"><b><<<EFBFBD>xinclude</b></a></td><td align="right"><a accesskey="n" href="libxml-nanoftp.html"><b>nanoftp<EFBFBD>>></b></a></td></tr></table></body></html>
|