| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286 |
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
- <meta http-equiv="X-UA-Compatible" content="IE=9"/>
- <title>RakNet: RakNet::HTTPConnection Class Reference</title>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- <script type="text/javascript" src="jquery.js"></script>
- <script type="text/javascript" src="dynsections.js"></script>
- <link href="doxygen.css" rel="stylesheet" type="text/css" />
- </head>
- <body>
- <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
- <div id="titlearea">
- <table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
- <td style="padding-left: 0.5em;">
- <div id="projectname">RakNet
-  <span id="projectnumber">4.0</span>
- </div>
- </td>
- </tr>
- </tbody>
- </table>
- </div>
- <!-- end header part -->
- <!-- Generated by Doxygen 1.8.2 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="pages.html"><span>Related Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="namespaces.html"><span>Namespaces</span></a></li>
- <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Class List</span></a></li>
- <li><a href="classes.html"><span>Class Index</span></a></li>
- <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
- <li><a href="functions.html"><span>Class Members</span></a></li>
- </ul>
- </div>
- <div id="nav-path" class="navpath">
- <ul>
- <li class="navelem"><a class="el" href="namespaceRakNet.html">RakNet</a></li><li class="navelem"><a class="el" href="classRakNet_1_1HTTPConnection.html">HTTPConnection</a></li> </ul>
- </div>
- </div><!-- top -->
- <div class="header">
- <div class="summary">
- <a href="#nested-classes">Classes</a> |
- <a href="#pub-types">Public Types</a> |
- <a href="#pub-methods">Public Member Functions</a> |
- <a href="classRakNet_1_1HTTPConnection-members.html">List of all members</a> </div>
- <div class="headertitle">
- <div class="title">RakNet::HTTPConnection Class Reference</div> </div>
- </div><!--header-->
- <div class="contents">
- <p>Use <a class="el" href="classRakNet_1_1HTTPConnection.html" title="Use HTTPConnection to communicate with a web server.">HTTPConnection</a> to communicate with a web server.
- <a href="classRakNet_1_1HTTPConnection.html#details">More...</a></p>
- <p><code>#include <HTTPConnection.h></code></p>
- <table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
- Classes</h2></td></tr>
- <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct  </td><td class="memItemRight" valign="bottom"><a class="el" href="structRakNet_1_1HTTPConnection_1_1BadResponse.html">BadResponse</a></td></tr>
- <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Encapsulates a raw HTTP response and response code. <a href="structRakNet_1_1HTTPConnection_1_1BadResponse.html#details">More...</a><br/></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- </table><table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a>
- Public Types</h2></td></tr>
- <tr class="memitem:a476dfc8417c5ba51f29bcebf24f1685e"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="classRakNet_1_1HTTPConnection.html#a476dfc8417c5ba51f29bcebf24f1685e">ResponseCodes</a> </td></tr>
- <tr class="separator:a476dfc8417c5ba51f29bcebf24f1685e"><td class="memSeparator" colspan="2"> </td></tr>
- </table><table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
- Public Member Functions</h2></td></tr>
- <tr class="memitem:ad2b619ad773b90f4e76cf4cfd0e8b99d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad2b619ad773b90f4e76cf4cfd0e8b99d"></a>
-  </td><td class="memItemRight" valign="bottom"><a class="el" href="classRakNet_1_1HTTPConnection.html#ad2b619ad773b90f4e76cf4cfd0e8b99d">HTTPConnection</a> ()</td></tr>
- <tr class="memdesc:ad2b619ad773b90f4e76cf4cfd0e8b99d"><td class="mdescLeft"> </td><td class="mdescRight">Returns a HTTP object associated with this tcp connection. <br/></td></tr>
- <tr class="separator:ad2b619ad773b90f4e76cf4cfd0e8b99d"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a141477df97a0f86b6f2d4d3a95a1baf2"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classRakNet_1_1HTTPConnection.html#a141477df97a0f86b6f2d4d3a95a1baf2">Init</a> (TCPInterface *_tcp, const char *host, unsigned short port=80)</td></tr>
- <tr class="separator:a141477df97a0f86b6f2d4d3a95a1baf2"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ae13eeb1d5063b5bb3e083c9ecd217708"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classRakNet_1_1HTTPConnection.html#ae13eeb1d5063b5bb3e083c9ecd217708">Post</a> (const char *path, const char *data, const char *_contentType="application/x-www-form-urlencoded")</td></tr>
- <tr class="separator:ae13eeb1d5063b5bb3e083c9ecd217708"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ac853da0128efafd138d379beb9e4de67"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classRakNet_1_1HTTPConnection.html#ac853da0128efafd138d379beb9e4de67">Get</a> (const char *path)</td></tr>
- <tr class="separator:ac853da0128efafd138d379beb9e4de67"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a46f1fd6bec3066d45192381e2c664091"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a46f1fd6bec3066d45192381e2c664091"></a>
- bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classRakNet_1_1HTTPConnection.html#a46f1fd6bec3066d45192381e2c664091">HasRead</a> (void) const </td></tr>
- <tr class="memdesc:a46f1fd6bec3066d45192381e2c664091"><td class="mdescLeft"> </td><td class="mdescRight">Is there a Read result ready? <br/></td></tr>
- <tr class="separator:a46f1fd6bec3066d45192381e2c664091"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ac932aee66fc03a34e00bd0e3d956f499"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classRakNet_1_1RakString.html">RakNet::RakString</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classRakNet_1_1HTTPConnection.html#ac932aee66fc03a34e00bd0e3d956f499">Read</a> (void)</td></tr>
- <tr class="separator:ac932aee66fc03a34e00bd0e3d956f499"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a0e4fadf7bf4a758b088d79ad436bd28c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0e4fadf7bf4a758b088d79ad436bd28c"></a>
- void </td><td class="memItemRight" valign="bottom"><a class="el" href="classRakNet_1_1HTTPConnection.html#a0e4fadf7bf4a758b088d79ad436bd28c">Update</a> (void)</td></tr>
- <tr class="memdesc:a0e4fadf7bf4a758b088d79ad436bd28c"><td class="mdescLeft"> </td><td class="mdescRight">Call periodically to do time-based updates. <br/></td></tr>
- <tr class="separator:a0e4fadf7bf4a758b088d79ad436bd28c"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a5bf0b91909e4936e46255089347060fe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5bf0b91909e4936e46255089347060fe"></a>
- <a class="el" href="structRakNet_1_1SystemAddress.html">SystemAddress</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classRakNet_1_1HTTPConnection.html#a5bf0b91909e4936e46255089347060fe">GetServerAddress</a> (void) const </td></tr>
- <tr class="memdesc:a5bf0b91909e4936e46255089347060fe"><td class="mdescLeft"> </td><td class="mdescRight">Returns the address of the server we are connected to. <br/></td></tr>
- <tr class="separator:a5bf0b91909e4936e46255089347060fe"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a7b1a42b83ba1e8d800f34b3a69ea259a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classRakNet_1_1HTTPConnection.html#a7b1a42b83ba1e8d800f34b3a69ea259a">ProcessTCPPacket</a> (<a class="el" href="structRakNet_1_1Packet.html">Packet</a> *packet)</td></tr>
- <tr class="separator:a7b1a42b83ba1e8d800f34b3a69ea259a"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:adf5e4381c2076eb67d753b75dc19f15d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adf5e4381c2076eb67d753b75dc19f15d"></a>
- bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classRakNet_1_1HTTPConnection.html#adf5e4381c2076eb67d753b75dc19f15d">HasBadResponse</a> (int *code, <a class="el" href="classRakNet_1_1RakString.html">RakNet::RakString</a> *data)</td></tr>
- <tr class="memdesc:adf5e4381c2076eb67d753b75dc19f15d"><td class="mdescLeft"> </td><td class="mdescRight">Queued events of failed exchanges with the HTTP server. <br/></td></tr>
- <tr class="separator:adf5e4381c2076eb67d753b75dc19f15d"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a011655483785704a389ad23ca5cbd5e3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a011655483785704a389ad23ca5cbd5e3"></a>
- bool </td><td class="memItemRight" valign="bottom"><a class="el" href="classRakNet_1_1HTTPConnection.html#a011655483785704a389ad23ca5cbd5e3">IsBusy</a> (void) const </td></tr>
- <tr class="memdesc:a011655483785704a389ad23ca5cbd5e3"><td class="mdescLeft"> </td><td class="mdescRight">Returns false if the connection is not doing anything else. <br/></td></tr>
- <tr class="separator:a011655483785704a389ad23ca5cbd5e3"><td class="memSeparator" colspan="2"> </td></tr>
- </table>
- <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
- <div class="textblock"><p>Use <a class="el" href="classRakNet_1_1HTTPConnection.html" title="Use HTTPConnection to communicate with a web server.">HTTPConnection</a> to communicate with a web server. </p>
- <p>Start an instance of TCPInterface via the Start() command. Instantiate a new instance of <a class="el" href="classRakNet_1_1HTTPConnection.html" title="Use HTTPConnection to communicate with a web server.">HTTPConnection</a>, and associate TCPInterface with the class in the constructor. Use <a class="el" href="classRakNet_1_1HTTPConnection.html#ae13eeb1d5063b5bb3e083c9ecd217708">Post()</a> to send commands to the web server, and ProcessDataPacket() to update the connection with packets returned from TCPInterface that have the system address of the web server This class will handle connecting and reconnecting as necessary.</p>
- <p>Note that only one <a class="el" href="classRakNet_1_1HTTPConnection.html#ae13eeb1d5063b5bb3e083c9ecd217708">Post()</a> can be handled at a time. </p>
- <dl class="deprecated"><dt><b><a class="el" href="deprecated.html#_deprecated000001">Deprecated:</a></b></dt><dd>, use <a class="el" href="classRakNet_1_1HTTPConnection2.html" title="Use HTTPConnection2 to communicate with a web server.">HTTPConnection2</a> </dd></dl>
- </div><h2 class="groupheader">Member Enumeration Documentation</h2>
- <a class="anchor" id="a476dfc8417c5ba51f29bcebf24f1685e"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">enum <a class="el" href="classRakNet_1_1HTTPConnection.html#a476dfc8417c5ba51f29bcebf24f1685e">RakNet::HTTPConnection::ResponseCodes</a></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Results of HTTP requests. Standard response codes are < 999 ( define HTTP codes and our internal codes as needed ) </p>
- </div>
- </div>
- <h2 class="groupheader">Member Function Documentation</h2>
- <a class="anchor" id="ac853da0128efafd138d379beb9e4de67"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void RakNet::HTTPConnection::Get </td>
- <td>(</td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>path</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Get a file from a webserver </p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">path</td><td>the path on the remote server you want to GET from. For example "index.html" </td></tr>
- </table>
- </dd>
- </dl>
- </div>
- </div>
- <a class="anchor" id="a141477df97a0f86b6f2d4d3a95a1baf2"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void RakNet::HTTPConnection::Init </td>
- <td>(</td>
- <td class="paramtype">TCPInterface * </td>
- <td class="paramname"><em>_tcp</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>host</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">unsigned short </td>
- <td class="paramname"><em>port</em> = <code>80</code> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <dl class="section pre"><dt>Precondition</dt><dd>tcp should already be started </dd></dl>
- </div>
- </div>
- <a class="anchor" id="ae13eeb1d5063b5bb3e083c9ecd217708"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void RakNet::HTTPConnection::Post </td>
- <td>(</td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>path</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>data</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const char * </td>
- <td class="paramname"><em>_contentType</em> = <code>"application/x-www-form-urlencoded"</code> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Submit data to the HTTP server HTTP only allows one request at a time per connection</p>
- <dl class="section pre"><dt>Precondition</dt><dd><a class="el" href="classRakNet_1_1HTTPConnection.html#a011655483785704a389ad23ca5cbd5e3" title="Returns false if the connection is not doing anything else.">IsBusy()</a>==false </dd></dl>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">path</td><td>the path on the remote server you want to POST to. For example "index.html" </td></tr>
- <tr><td class="paramname">data</td><td>A NULL terminated string to submit to the server</td></tr>
- <tr><td class="paramname">contentType</td><td>"Content-Type:" passed to post. </td></tr>
- </table>
- </dd>
- </dl>
- </div>
- </div>
- <a class="anchor" id="a7b1a42b83ba1e8d800f34b3a69ea259a"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void RakNet::HTTPConnection::ProcessTCPPacket </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="structRakNet_1_1Packet.html">Packet</a> * </td>
- <td class="paramname"><em>packet</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Process an HTTP data packet returned from TCPInterface Returns true when we have gotten all the data from the HTTP server. If this returns true then it's safe to <a class="el" href="classRakNet_1_1HTTPConnection.html#ae13eeb1d5063b5bb3e083c9ecd217708">Post()</a> another request Deallocate the packet as usual via TCPInterface</p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramname">packet</td><td>NULL or a packet associated with our host and port </td></tr>
- </table>
- </dd>
- </dl>
- </div>
- </div>
- <a class="anchor" id="ac932aee66fc03a34e00bd0e3d956f499"></a>
- <div class="memitem">
- <div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="classRakNet_1_1RakString.html">RakNet::RakString</a> RakNet::HTTPConnection::Read </td>
- <td>(</td>
- <td class="paramtype">void </td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Get one result from the server</p>
- <dl class="section pre"><dt>Precondition</dt><dd>HasResult must return true </dd></dl>
- </div>
- </div>
- <hr/>The documentation for this class was generated from the following file:<ul>
- <li>D:/temp/RakNet_PC/Source/<a class="el" href="HTTPConnection_8h.html">HTTPConnection.h</a></li>
- </ul>
- </div><!-- contents -->
- <!-- start footer part -->
- <hr class="footer"/><address class="footer"><small>
- Generated on Mon Jun 2 2014 20:10:28 for RakNet by  <a href="http://www.doxygen.org/index.html">
- <img class="footer" src="doxygen.png" alt="doxygen"/>
- </a> 1.8.2
- </small></address>
- </body>
- </html>
|