xref: /nrf52832-nimble/rt-thread/components/net/uip/doc/html/a00110.html (revision 104654410c56c573564690304ae786df310c91fc)
1*10465441SEvalZero<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2*10465441SEvalZero<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
3*10465441SEvalZero<title>uIP 1.0: apps/webclient/webclient.c File Reference</title>
4*10465441SEvalZero<link href="doxygen.css" rel="stylesheet" type="text/css">
5*10465441SEvalZero<link href="tabs.css" rel="stylesheet" type="text/css">
6*10465441SEvalZero</head><body>
7*10465441SEvalZero<!-- Generated by Doxygen 1.4.6 -->
8*10465441SEvalZero<div class="tabs">
9*10465441SEvalZero  <ul>
10*10465441SEvalZero    <li><a href="main.html"><span>Main&nbsp;Page</span></a></li>
11*10465441SEvalZero    <li><a href="modules.html"><span>Modules</span></a></li>
12*10465441SEvalZero    <li><a href="classes.html"><span>Data&nbsp;Structures</span></a></li>
13*10465441SEvalZero    <li id="current"><a href="files.html"><span>Files</span></a></li>
14*10465441SEvalZero    <li><a href="examples.html"><span>Examples</span></a></li>
15*10465441SEvalZero  </ul></div>
16*10465441SEvalZero<div class="tabs">
17*10465441SEvalZero  <ul>
18*10465441SEvalZero    <li><a href="files.html"><span>File&nbsp;List</span></a></li>
19*10465441SEvalZero    <li><a href="globals.html"><span>Globals</span></a></li>
20*10465441SEvalZero  </ul></div>
21*10465441SEvalZero<h1>apps/webclient/webclient.c File Reference</h1><hr><a name="_details"></a><h2>Detailed Description</h2>
22*10465441SEvalZeroImplementation of the HTTP client.
23*10465441SEvalZero<p>
24*10465441SEvalZero<dl compact><dt><b>Author:</b></dt><dd>Adam Dunkels &lt;<a href="mailto:[email protected]">[email protected]</a>&gt; </dd></dl>
25*10465441SEvalZero
26*10465441SEvalZero<p>
27*10465441SEvalZeroDefinition in file <a class="el" href="a00180.html">webclient.c</a>.
28*10465441SEvalZero<p>
29*10465441SEvalZero<code>#include &quot;<a class="el" href="a00202.html">uip.h</a>&quot;</code><br>
30*10465441SEvalZero<code>#include &quot;uiplib.h&quot;</code><br>
31*10465441SEvalZero<code>#include &quot;<a class="el" href="a00181.html">webclient.h</a>&quot;</code><br>
32*10465441SEvalZero<code>#include &quot;<a class="el" href="a00173.html">resolv.h</a>&quot;</code><br>
33*10465441SEvalZero<code>#include &lt;string.h&gt;</code><br>
34*10465441SEvalZero
35*10465441SEvalZero<p>
36*10465441SEvalZero<a href="a00180.html">Go to the source code of this file.</a><table border="0" cellpadding="0" cellspacing="0">
37*10465441SEvalZero<tr><td></td></tr>
38*10465441SEvalZero<tr><td colspan="2"><br><h2>Defines</h2></td></tr>
39*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g31be289fd8ec3fe09b0088165d13976d"></a><!-- doxytag: member="webclient.c::WEBCLIENT_TIMEOUT" ref="g31be289fd8ec3fe09b0088165d13976d" args="" -->
40*10465441SEvalZero#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#g31be289fd8ec3fe09b0088165d13976d">WEBCLIENT_TIMEOUT</a>&nbsp;&nbsp;&nbsp;100</td></tr>
41*10465441SEvalZero
42*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g8714af98a550f10dc814db92b08d1b0d"></a><!-- doxytag: member="webclient.c::WEBCLIENT_STATE_STATUSLINE" ref="g8714af98a550f10dc814db92b08d1b0d" args="" -->
43*10465441SEvalZero#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#g8714af98a550f10dc814db92b08d1b0d">WEBCLIENT_STATE_STATUSLINE</a>&nbsp;&nbsp;&nbsp;0</td></tr>
44*10465441SEvalZero
45*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gc4357cec23abca29d2bb885803625a6a"></a><!-- doxytag: member="webclient.c::WEBCLIENT_STATE_HEADERS" ref="gc4357cec23abca29d2bb885803625a6a" args="" -->
46*10465441SEvalZero#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#gc4357cec23abca29d2bb885803625a6a">WEBCLIENT_STATE_HEADERS</a>&nbsp;&nbsp;&nbsp;1</td></tr>
47*10465441SEvalZero
48*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g4d457c50e6f2cef57167c3804ce8bf7c"></a><!-- doxytag: member="webclient.c::WEBCLIENT_STATE_DATA" ref="g4d457c50e6f2cef57167c3804ce8bf7c" args="" -->
49*10465441SEvalZero#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#g4d457c50e6f2cef57167c3804ce8bf7c">WEBCLIENT_STATE_DATA</a>&nbsp;&nbsp;&nbsp;2</td></tr>
50*10465441SEvalZero
51*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g863c94b0ed4a76997e53a3ccd5d0b6c3"></a><!-- doxytag: member="webclient.c::WEBCLIENT_STATE_CLOSE" ref="g863c94b0ed4a76997e53a3ccd5d0b6c3" args="" -->
52*10465441SEvalZero#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#g863c94b0ed4a76997e53a3ccd5d0b6c3">WEBCLIENT_STATE_CLOSE</a>&nbsp;&nbsp;&nbsp;3</td></tr>
53*10465441SEvalZero
54*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g40fb1fb2d990ce04ae9bbee275627c03"></a><!-- doxytag: member="webclient.c::HTTPFLAG_NONE" ref="g40fb1fb2d990ce04ae9bbee275627c03" args="" -->
55*10465441SEvalZero#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#g40fb1fb2d990ce04ae9bbee275627c03">HTTPFLAG_NONE</a>&nbsp;&nbsp;&nbsp;0</td></tr>
56*10465441SEvalZero
57*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gda99954e0f6905091885934e86c278cc"></a><!-- doxytag: member="webclient.c::HTTPFLAG_OK" ref="gda99954e0f6905091885934e86c278cc" args="" -->
58*10465441SEvalZero#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#gda99954e0f6905091885934e86c278cc">HTTPFLAG_OK</a>&nbsp;&nbsp;&nbsp;1</td></tr>
59*10465441SEvalZero
60*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="gd895686859ae7d178d31be04eb0a1a97"></a><!-- doxytag: member="webclient.c::HTTPFLAG_MOVED" ref="gd895686859ae7d178d31be04eb0a1a97" args="" -->
61*10465441SEvalZero#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#gd895686859ae7d178d31be04eb0a1a97">HTTPFLAG_MOVED</a>&nbsp;&nbsp;&nbsp;2</td></tr>
62*10465441SEvalZero
63*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g38af81a4c9884ce89803fc3e52383112"></a><!-- doxytag: member="webclient.c::HTTPFLAG_ERROR" ref="g38af81a4c9884ce89803fc3e52383112" args="" -->
64*10465441SEvalZero#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#g38af81a4c9884ce89803fc3e52383112">HTTPFLAG_ERROR</a>&nbsp;&nbsp;&nbsp;3</td></tr>
65*10465441SEvalZero
66*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g3212e70c55244608ac16316888c354f0"></a><!-- doxytag: member="webclient.c::ISO_nl" ref="g3212e70c55244608ac16316888c354f0" args="" -->
67*10465441SEvalZero#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#g3212e70c55244608ac16316888c354f0">ISO_nl</a>&nbsp;&nbsp;&nbsp;0x0a</td></tr>
68*10465441SEvalZero
69*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g6cda47c85ce1b58b501b44ac9cccc50e"></a><!-- doxytag: member="webclient.c::ISO_cr" ref="g6cda47c85ce1b58b501b44ac9cccc50e" args="" -->
70*10465441SEvalZero#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#g6cda47c85ce1b58b501b44ac9cccc50e">ISO_cr</a>&nbsp;&nbsp;&nbsp;0x0d</td></tr>
71*10465441SEvalZero
72*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g71e1b022f7b7fa3a154f19372b239935"></a><!-- doxytag: member="webclient.c::ISO_space" ref="g71e1b022f7b7fa3a154f19372b239935" args="" -->
73*10465441SEvalZero#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#g71e1b022f7b7fa3a154f19372b239935">ISO_space</a>&nbsp;&nbsp;&nbsp;0x20</td></tr>
74*10465441SEvalZero
75*10465441SEvalZero<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
76*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#g4433d3af16ea083a81576d0f18ba57c9">webclient_mimetype</a> (void)</td></tr>
77*10465441SEvalZero
78*10465441SEvalZero<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Obtain the MIME type of the current HTTP data stream.  <a href="a00163.html#g4433d3af16ea083a81576d0f18ba57c9"></a><br></td></tr>
79*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#g41e616d3fcc17e0aabfe8ab45ef0d30f">webclient_filename</a> (void)</td></tr>
80*10465441SEvalZero
81*10465441SEvalZero<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Obtain the filename of the current HTTP data stream.  <a href="a00163.html#g41e616d3fcc17e0aabfe8ab45ef0d30f"></a><br></td></tr>
82*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#g0e0ea5f24b77f124ba33bcbc7ede5bfb">webclient_hostname</a> (void)</td></tr>
83*10465441SEvalZero
84*10465441SEvalZero<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Obtain the hostname of the current HTTP data stream.  <a href="a00163.html#g0e0ea5f24b77f124ba33bcbc7ede5bfb"></a><br></td></tr>
85*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned short&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#g2a939aa4fcffabbce1dc1f784a7e0ad3">webclient_port</a> (void)</td></tr>
86*10465441SEvalZero
87*10465441SEvalZero<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Obtain the port number of the current HTTP data stream.  <a href="a00163.html#g2a939aa4fcffabbce1dc1f784a7e0ad3"></a><br></td></tr>
88*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g3caacabb2fe1c71921e1a471719ccbd2"></a><!-- doxytag: member="webclient.c::webclient_init" ref="g3caacabb2fe1c71921e1a471719ccbd2" args="(void)" -->
89*10465441SEvalZerovoid&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#g3caacabb2fe1c71921e1a471719ccbd2">webclient_init</a> (void)</td></tr>
90*10465441SEvalZero
91*10465441SEvalZero<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize the webclient module. <br></td></tr>
92*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g1d34be506a61db90dd7829117efdf8cf"></a><!-- doxytag: member="webclient.c::webclient_close" ref="g1d34be506a61db90dd7829117efdf8cf" args="(void)" -->
93*10465441SEvalZerovoid&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#g1d34be506a61db90dd7829117efdf8cf">webclient_close</a> (void)</td></tr>
94*10465441SEvalZero
95*10465441SEvalZero<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Close the currently open HTTP connection. <br></td></tr>
96*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top">unsigned char&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#gf9385ef9ecc74c7d53ff2f15e62bfde3">webclient_get</a> (char *host, <a class="el" href="a00153.html#g77570ac4fcab86864fa1916e55676da2">u16_t</a> port, char *file)</td></tr>
97*10465441SEvalZero
98*10465441SEvalZero<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Open an HTTP connection to a web server and ask for a file using the GET method.  <a href="a00163.html#gf9385ef9ecc74c7d53ff2f15e62bfde3"></a><br></td></tr>
99*10465441SEvalZero<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="g9e6d2864f390a4ba1ac60dc65e2b9815"></a><!-- doxytag: member="webclient.c::webclient_appcall" ref="g9e6d2864f390a4ba1ac60dc65e2b9815" args="(void)" -->
100*10465441SEvalZerovoid&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00163.html#g9e6d2864f390a4ba1ac60dc65e2b9815">webclient_appcall</a> (void)</td></tr>
101*10465441SEvalZero
102*10465441SEvalZero</table>
103*10465441SEvalZero<hr size="1"><address style="align: right;"><small>Generated on Mon Jun 12 10:23:01 2006 for uIP 1.0 by&nbsp;
104*10465441SEvalZero<a href="http://www.doxygen.org/index.html">
105*10465441SEvalZero<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.6 </small></address>
106*10465441SEvalZero</body>
107*10465441SEvalZero</html>
108