<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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"/>
<meta name="generator" content="Doxygen 1.8.18"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Crashpad: crashpad::HTTPTransport 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="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
<link href="crashpad_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 id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Crashpad
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.18 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','Search');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div id="nav-path" class="navpath">
  <ul>
<li class="navelem"><a class="el" href="namespacecrashpad.html">crashpad</a></li><li class="navelem"><a class="el" href="classcrashpad_1_1HTTPTransport.html">HTTPTransport</a></li>  </ul>
</div>
</div><!-- top -->
<div class="header">
  <div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pro-methods">Protected Member Functions</a> &#124;
<a href="classcrashpad_1_1HTTPTransport-members.html">List of all members</a>  </div>
  <div class="headertitle">
<div class="title">crashpad::HTTPTransport Class Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div>  </div>
</div><!--header-->
<div class="contents">

<p><a class="el" href="classcrashpad_1_1HTTPTransport.html" title="HTTPTransport executes a HTTP request using the specified URL, HTTP method, headers,...">HTTPTransport</a> executes a HTTP request using the specified URL, HTTP method, headers, and body. This class can only issue a synchronous HTTP request.  
 <a href="classcrashpad_1_1HTTPTransport.html#details">More...</a></p>

<p><code>#include &quot;util/net/http_transport.h&quot;</code></p>
<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:a505d8f15710b1490f78d952cf84256f1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1HTTPTransport.html#a505d8f15710b1490f78d952cf84256f1">SetURL</a> (const std::string &amp;url)</td></tr>
<tr class="memdesc:a505d8f15710b1490f78d952cf84256f1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets URL to which the request will be made.  <a href="classcrashpad_1_1HTTPTransport.html#a505d8f15710b1490f78d952cf84256f1">More...</a><br /></td></tr>
<tr class="separator:a505d8f15710b1490f78d952cf84256f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b2ee247e1ebed60cc883882ab642abe"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1HTTPTransport.html#a5b2ee247e1ebed60cc883882ab642abe">SetMethod</a> (const std::string &amp;http_method)</td></tr>
<tr class="memdesc:a5b2ee247e1ebed60cc883882ab642abe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the HTTP method to execute. E.g., GET, POST, etc. The default method is <code>"POST"</code>.  <a href="classcrashpad_1_1HTTPTransport.html#a5b2ee247e1ebed60cc883882ab642abe">More...</a><br /></td></tr>
<tr class="separator:a5b2ee247e1ebed60cc883882ab642abe"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d42fc9fd2386c1c10922d2765d2e2a0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1HTTPTransport.html#a2d42fc9fd2386c1c10922d2765d2e2a0">SetHeader</a> (const std::string &amp;header, const std::string &amp;value)</td></tr>
<tr class="memdesc:a2d42fc9fd2386c1c10922d2765d2e2a0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets a HTTP header-value pair.  <a href="classcrashpad_1_1HTTPTransport.html#a2d42fc9fd2386c1c10922d2765d2e2a0">More...</a><br /></td></tr>
<tr class="separator:a2d42fc9fd2386c1c10922d2765d2e2a0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3a98227ab40c59b8b00c39127b3c618"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1HTTPTransport.html#af3a98227ab40c59b8b00c39127b3c618">SetBodyStream</a> (std::unique_ptr&lt; <a class="el" href="classcrashpad_1_1HTTPBodyStream.html">HTTPBodyStream</a> &gt; stream)</td></tr>
<tr class="memdesc:af3a98227ab40c59b8b00c39127b3c618"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the stream object from which to generate the HTTP body.  <a href="classcrashpad_1_1HTTPTransport.html#af3a98227ab40c59b8b00c39127b3c618">More...</a><br /></td></tr>
<tr class="separator:af3a98227ab40c59b8b00c39127b3c618"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd26eb2c22f87139745fc2de4eb7524a"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1HTTPTransport.html#abd26eb2c22f87139745fc2de4eb7524a">SetTimeout</a> (double timeout)</td></tr>
<tr class="memdesc:abd26eb2c22f87139745fc2de4eb7524a"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets the timeout for the HTTP request. The default is 15 seconds.  <a href="classcrashpad_1_1HTTPTransport.html#abd26eb2c22f87139745fc2de4eb7524a">More...</a><br /></td></tr>
<tr class="separator:abd26eb2c22f87139745fc2de4eb7524a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5e48cfb9ad23171e4f3e6813f035368"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1HTTPTransport.html#af5e48cfb9ad23171e4f3e6813f035368">SetRootCACertificatePath</a> (const base::FilePath &amp;cert)</td></tr>
<tr class="memdesc:af5e48cfb9ad23171e4f3e6813f035368"><td class="mdescLeft">&#160;</td><td class="mdescRight">Sets a certificate file to be used in lieu of the system CA cert bundle.  <a href="classcrashpad_1_1HTTPTransport.html#af5e48cfb9ad23171e4f3e6813f035368">More...</a><br /></td></tr>
<tr class="separator:af5e48cfb9ad23171e4f3e6813f035368"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a08803c6c93750cbdc04c814a73a65efe"><td class="memItemLeft" align="right" valign="top">virtual bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1HTTPTransport.html#a08803c6c93750cbdc04c814a73a65efe">ExecuteSynchronously</a> (std::string *response_body)=0</td></tr>
<tr class="memdesc:a08803c6c93750cbdc04c814a73a65efe"><td class="mdescLeft">&#160;</td><td class="mdescRight">Performs the HTTP request with the configured parameters and waits for the execution to complete.  <a href="classcrashpad_1_1HTTPTransport.html#a08803c6c93750cbdc04c814a73a65efe">More...</a><br /></td></tr>
<tr class="separator:a08803c6c93750cbdc04c814a73a65efe"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr class="memitem:a369e362335bff481ba176ecdf7b036a1"><td class="memItemLeft" align="right" valign="top">static std::unique_ptr&lt; <a class="el" href="classcrashpad_1_1HTTPTransport.html">HTTPTransport</a> &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcrashpad_1_1HTTPTransport.html#a369e362335bff481ba176ecdf7b036a1">Create</a> ()</td></tr>
<tr class="memdesc:a369e362335bff481ba176ecdf7b036a1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Instantiates a concrete <a class="el" href="classcrashpad_1_1HTTPTransport.html" title="HTTPTransport executes a HTTP request using the specified URL, HTTP method, headers,...">HTTPTransport</a> class for the current operating system.  <a href="classcrashpad_1_1HTTPTransport.html#a369e362335bff481ba176ecdf7b036a1">More...</a><br /></td></tr>
<tr class="separator:a369e362335bff481ba176ecdf7b036a1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
Protected Member Functions</h2></td></tr>
<tr class="memitem:a0bd176469b46e133c80e0490cc07f994"><td class="memItemLeft" align="right" valign="top"><a id="a0bd176469b46e133c80e0490cc07f994"></a>
const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>url</b> () const</td></tr>
<tr class="separator:a0bd176469b46e133c80e0490cc07f994"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a58e7c6e4f2ab97fb81928633918534e4"><td class="memItemLeft" align="right" valign="top"><a id="a58e7c6e4f2ab97fb81928633918534e4"></a>
const std::string &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>method</b> () const</td></tr>
<tr class="separator:a58e7c6e4f2ab97fb81928633918534e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8a3e28f0c8f6213a9bd387a9c479fbee"><td class="memItemLeft" align="right" valign="top"><a id="a8a3e28f0c8f6213a9bd387a9c479fbee"></a>
const <a class="el" href="namespacecrashpad.html#af6ffe10a8131fab8d1f8de60d9a812f9">HTTPHeaders</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>headers</b> () const</td></tr>
<tr class="separator:a8a3e28f0c8f6213a9bd387a9c479fbee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c2ce502cdd79aec7b66e8f3de6dde91"><td class="memItemLeft" align="right" valign="top"><a id="a5c2ce502cdd79aec7b66e8f3de6dde91"></a>
<a class="el" href="classcrashpad_1_1HTTPBodyStream.html">HTTPBodyStream</a> *&#160;</td><td class="memItemRight" valign="bottom"><b>body_stream</b> () const</td></tr>
<tr class="separator:a5c2ce502cdd79aec7b66e8f3de6dde91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16550604ed085be0481f25227e6f3752"><td class="memItemLeft" align="right" valign="top"><a id="a16550604ed085be0481f25227e6f3752"></a>
double&#160;</td><td class="memItemRight" valign="bottom"><b>timeout</b> () const</td></tr>
<tr class="separator:a16550604ed085be0481f25227e6f3752"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acedbc508286a6fc35db2e0f3e59e6b2d"><td class="memItemLeft" align="right" valign="top"><a id="acedbc508286a6fc35db2e0f3e59e6b2d"></a>
const base::FilePath &amp;&#160;</td><td class="memItemRight" valign="bottom"><b>root_ca_certificate_path</b> () const</td></tr>
<tr class="separator:acedbc508286a6fc35db2e0f3e59e6b2d"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p><a class="el" href="classcrashpad_1_1HTTPTransport.html" title="HTTPTransport executes a HTTP request using the specified URL, HTTP method, headers,...">HTTPTransport</a> executes a HTTP request using the specified URL, HTTP method, headers, and body. This class can only issue a synchronous HTTP request. </p>
<p>This class cannot be instantiated directly. A concrete subclass must be instantiated instead, which provides an implementation to execute the request that is appropriate for the host operating system. </p>
</div><h2 class="groupheader">Member Function Documentation</h2>
<a id="a369e362335bff481ba176ecdf7b036a1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a369e362335bff481ba176ecdf7b036a1">&#9670;&nbsp;</a></span>Create()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">std::unique_ptr&lt; <a class="el" href="classcrashpad_1_1HTTPTransport.html">HTTPTransport</a> &gt; crashpad::HTTPTransport::Create </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Instantiates a concrete <a class="el" href="classcrashpad_1_1HTTPTransport.html" title="HTTPTransport executes a HTTP request using the specified URL, HTTP method, headers,...">HTTPTransport</a> class for the current operating system. </p>
<dl class="section return"><dt>Returns</dt><dd>A new caller-owned <a class="el" href="classcrashpad_1_1HTTPTransport.html" title="HTTPTransport executes a HTTP request using the specified URL, HTTP method, headers,...">HTTPTransport</a> object. </dd></dl>

</div>
</div>
<a id="a08803c6c93750cbdc04c814a73a65efe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a08803c6c93750cbdc04c814a73a65efe">&#9670;&nbsp;</a></span>ExecuteSynchronously()</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">virtual bool crashpad::HTTPTransport::ExecuteSynchronously </td>
          <td>(</td>
          <td class="paramtype">std::string *&#160;</td>
          <td class="paramname"><em>response_body</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">pure virtual</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Performs the HTTP request with the configured parameters and waits for the execution to complete. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[out]</td><td class="paramname">response_body</td><td>On success, this will be set to the HTTP response body. This parameter is optional and may be set to <code>nullptr</code> if the response body is not required.</td></tr>
  </table>
  </dd>
</dl>
<dl class="section return"><dt>Returns</dt><dd>Whether or not the request was successful, defined as returning a HTTP status code in the range 200-203 (inclusive). </dd></dl>

</div>
</div>
<a id="af3a98227ab40c59b8b00c39127b3c618"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af3a98227ab40c59b8b00c39127b3c618">&#9670;&nbsp;</a></span>SetBodyStream()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void crashpad::HTTPTransport::SetBodyStream </td>
          <td>(</td>
          <td class="paramtype">std::unique_ptr&lt; <a class="el" href="classcrashpad_1_1HTTPBodyStream.html">HTTPBodyStream</a> &gt;&#160;</td>
          <td class="paramname"><em>stream</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the stream object from which to generate the HTTP body. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">stream</td><td>A <a class="el" href="classcrashpad_1_1HTTPBodyStream.html" title="An interface to a stream that can be used for an HTTP request body.">HTTPBodyStream</a>, of which this class will take ownership. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a2d42fc9fd2386c1c10922d2765d2e2a0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2d42fc9fd2386c1c10922d2765d2e2a0">&#9670;&nbsp;</a></span>SetHeader()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void crashpad::HTTPTransport::SetHeader </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>header</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>value</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets a HTTP header-value pair. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">header</td><td>The HTTP header name. Any previous value set at this name will be overwritten. </td></tr>
    <tr><td class="paramdir">[in]</td><td class="paramname">value</td><td>The value to set for the header. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a5b2ee247e1ebed60cc883882ab642abe"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5b2ee247e1ebed60cc883882ab642abe">&#9670;&nbsp;</a></span>SetMethod()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void crashpad::HTTPTransport::SetMethod </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>http_method</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the HTTP method to execute. E.g., GET, POST, etc. The default method is <code>"POST"</code>. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">http_method</td><td>The HTTP method. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="af5e48cfb9ad23171e4f3e6813f035368"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af5e48cfb9ad23171e4f3e6813f035368">&#9670;&nbsp;</a></span>SetRootCACertificatePath()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void crashpad::HTTPTransport::SetRootCACertificatePath </td>
          <td>(</td>
          <td class="paramtype">const base::FilePath &amp;&#160;</td>
          <td class="paramname"><em>cert</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets a certificate file to be used in lieu of the system CA cert bundle. </p>
<p>This is exposed primarily for testing with a self-signed certificate, and it isn't necessary to set it in normal use.</p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">cert</td><td>The filename of a file in PEM format containing the CA cert to be used for TLS connections. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="abd26eb2c22f87139745fc2de4eb7524a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abd26eb2c22f87139745fc2de4eb7524a">&#9670;&nbsp;</a></span>SetTimeout()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void crashpad::HTTPTransport::SetTimeout </td>
          <td>(</td>
          <td class="paramtype">double&#160;</td>
          <td class="paramname"><em>timeout</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets the timeout for the HTTP request. The default is 15 seconds. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">timeout</td><td>The request timeout, in seconds. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<a id="a505d8f15710b1490f78d952cf84256f1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a505d8f15710b1490f78d952cf84256f1">&#9670;&nbsp;</a></span>SetURL()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void crashpad::HTTPTransport::SetURL </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>url</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Sets URL to which the request will be made. </p>
<dl class="params"><dt>Parameters</dt><dd>
  <table class="params">
    <tr><td class="paramdir">[in]</td><td class="paramname">url</td><td>The request URL. </td></tr>
  </table>
  </dd>
</dl>

</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>util/net/http_transport.h</li>
<li>util/net/http_transport.cc</li>
<li>util/net/http_transport_socket.cc</li>
<li>util/net/http_transport_win.cc</li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.18
</small></address>
</body>
</html>
