1<?xml version="1.0" encoding="ascii"?>
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3          "DTD/xhtml1-transitional.dtd">
4<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5<head>
6  <title>googleapiclient.http.HttpRequest</title>
7  <link rel="stylesheet" href="epydoc.css" type="text/css" />
8  <script type="text/javascript" src="epydoc.js"></script>
9</head>
10
11<body bgcolor="white" text="black" link="blue" vlink="#204080"
12      alink="#204080">
13<!-- ==================== NAVIGATION BAR ==================== -->
14<table class="navbar" border="0" width="100%" cellpadding="0"
15       bgcolor="#a0c0ff" cellspacing="0">
16  <tr valign="middle">
17  <!-- Home link -->
18      <th>&nbsp;&nbsp;&nbsp;<a
19        href="googleapiclient-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
20
21  <!-- Tree link -->
22      <th>&nbsp;&nbsp;&nbsp;<a
23        href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
24
25  <!-- Index link -->
26      <th>&nbsp;&nbsp;&nbsp;<a
27        href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
28
29  <!-- Help link -->
30      <th>&nbsp;&nbsp;&nbsp;<a
31        href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
32
33      <th class="navbar" width="100%"></th>
34  </tr>
35</table>
36<table width="100%" cellpadding="0" cellspacing="0">
37  <tr valign="top">
38    <td width="100%">
39      <span class="breadcrumbs">
40        <a href="googleapiclient-module.html">Package&nbsp;googleapiclient</a> ::
41        <a href="googleapiclient.http-module.html">Module&nbsp;http</a> ::
42        Class&nbsp;HttpRequest
43      </span>
44    </td>
45    <td>
46      <table cellpadding="0" cellspacing="0">
47        <!-- hide/show private -->
48        <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
49    onclick="toggle_private();">hide&nbsp;private</a>]</span></td></tr>
50        <tr><td align="right"><span class="options"
51            >[<a href="frames.html" target="_top">frames</a
52            >]&nbsp;|&nbsp;<a href="googleapiclient.http.HttpRequest-class.html"
53            target="_top">no&nbsp;frames</a>]</span></td></tr>
54      </table>
55    </td>
56  </tr>
57</table>
58<!-- ==================== CLASS DESCRIPTION ==================== -->
59<h1 class="epydoc">Class HttpRequest</h1><p class="nomargin-top"><span class="codelink"><a href="googleapiclient.http-pysrc.html#HttpRequest">source&nbsp;code</a></span></p>
60<pre class="base-tree">
61object --+
62         |
63        <strong class="uidshort">HttpRequest</strong>
64</pre>
65
66<hr />
67<p>Encapsulates a single HTTP request.</p>
68
69<!-- ==================== INSTANCE METHODS ==================== -->
70<a name="section-InstanceMethods"></a>
71<table class="summary" border="1" cellpadding="3"
72       cellspacing="0" width="100%" bgcolor="white">
73<tr bgcolor="#70b0f0" class="table-header">
74  <td colspan="2" class="table-header">
75    <table border="0" cellpadding="0" cellspacing="0" width="100%">
76      <tr valign="top">
77        <td align="left"><span class="table-header">Instance Methods</span></td>
78        <td align="right" valign="top"
79         ><span class="options">[<a href="#section-InstanceMethods"
80         class="privatelink" onclick="toggle_private();"
81         >hide private</a>]</span></td>
82      </tr>
83    </table>
84  </td>
85</tr>
86<tr>
87    <td width="15%" align="right" valign="top" class="summary">
88      <span class="summary-type">&nbsp;</span>
89    </td><td class="summary">
90      <table width="100%" cellpadding="0" cellspacing="0" border="0">
91        <tr>
92          <td><span class="summary-sig"><a href="googleapiclient.http.HttpRequest-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">*args</span>,
93        <span class="summary-sig-arg">**kwargs</span>)</span><br />
94      Constructor for an HttpRequest.</td>
95          <td align="right" valign="top">
96            <span class="codelink"><a href="googleapiclient.http-pysrc.html#HttpRequest.__init__">source&nbsp;code</a></span>
97
98          </td>
99        </tr>
100      </table>
101
102    </td>
103  </tr>
104<tr>
105    <td width="15%" align="right" valign="top" class="summary">
106      <span class="summary-type">&nbsp;</span>
107    </td><td class="summary">
108      <table width="100%" cellpadding="0" cellspacing="0" border="0">
109        <tr>
110          <td><span class="summary-sig"><a href="googleapiclient.http.HttpRequest-class.html#execute" class="summary-sig-name">execute</a>(<span class="summary-sig-arg">*args</span>,
111        <span class="summary-sig-arg">**kwargs</span>)</span><br />
112      Execute the request.</td>
113          <td align="right" valign="top">
114            <span class="codelink"><a href="googleapiclient.http-pysrc.html#HttpRequest.execute">source&nbsp;code</a></span>
115
116          </td>
117        </tr>
118      </table>
119
120    </td>
121  </tr>
122<tr>
123    <td width="15%" align="right" valign="top" class="summary">
124      <span class="summary-type">&nbsp;</span>
125    </td><td class="summary">
126      <table width="100%" cellpadding="0" cellspacing="0" border="0">
127        <tr>
128          <td><span class="summary-sig"><a href="googleapiclient.http.HttpRequest-class.html#add_response_callback" class="summary-sig-name">add_response_callback</a>(<span class="summary-sig-arg">*args</span>,
129        <span class="summary-sig-arg">**kwargs</span>)</span><br />
130      add_response_headers_callback</td>
131          <td align="right" valign="top">
132            <span class="codelink"><a href="googleapiclient.http-pysrc.html#HttpRequest.add_response_callback">source&nbsp;code</a></span>
133
134          </td>
135        </tr>
136      </table>
137
138    </td>
139  </tr>
140<tr>
141    <td width="15%" align="right" valign="top" class="summary">
142      <span class="summary-type">&nbsp;</span>
143    </td><td class="summary">
144      <table width="100%" cellpadding="0" cellspacing="0" border="0">
145        <tr>
146          <td><span class="summary-sig"><a href="googleapiclient.http.HttpRequest-class.html#next_chunk" class="summary-sig-name">next_chunk</a>(<span class="summary-sig-arg">*args</span>,
147        <span class="summary-sig-arg">**kwargs</span>)</span><br />
148      Execute the next step of a resumable upload.</td>
149          <td align="right" valign="top">
150            <span class="codelink"><a href="googleapiclient.http-pysrc.html#HttpRequest.next_chunk">source&nbsp;code</a></span>
151
152          </td>
153        </tr>
154      </table>
155
156    </td>
157  </tr>
158<tr class="private">
159    <td width="15%" align="right" valign="top" class="summary">
160      <span class="summary-type">&nbsp;</span>
161    </td><td class="summary">
162      <table width="100%" cellpadding="0" cellspacing="0" border="0">
163        <tr>
164          <td><span class="summary-sig"><a href="googleapiclient.http.HttpRequest-class.html#_process_response" class="summary-sig-name" onclick="show_private();">_process_response</a>(<span class="summary-sig-arg">self</span>,
165        <span class="summary-sig-arg">resp</span>,
166        <span class="summary-sig-arg">content</span>)</span><br />
167      Process the response from a single chunk upload.</td>
168          <td align="right" valign="top">
169            <span class="codelink"><a href="googleapiclient.http-pysrc.html#HttpRequest._process_response">source&nbsp;code</a></span>
170
171          </td>
172        </tr>
173      </table>
174
175    </td>
176  </tr>
177<tr>
178    <td width="15%" align="right" valign="top" class="summary">
179      <span class="summary-type">&nbsp;</span>
180    </td><td class="summary">
181      <table width="100%" cellpadding="0" cellspacing="0" border="0">
182        <tr>
183          <td><span class="summary-sig"><a name="to_json"></a><span class="summary-sig-name">to_json</span>(<span class="summary-sig-arg">self</span>)</span><br />
184      Returns a JSON representation of the HttpRequest.</td>
185          <td align="right" valign="top">
186            <span class="codelink"><a href="googleapiclient.http-pysrc.html#HttpRequest.to_json">source&nbsp;code</a></span>
187
188          </td>
189        </tr>
190      </table>
191
192    </td>
193  </tr>
194  <tr>
195    <td colspan="2" class="summary">
196    <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
197      <code>__delattr__</code>,
198      <code>__format__</code>,
199      <code>__getattribute__</code>,
200      <code>__hash__</code>,
201      <code>__new__</code>,
202      <code>__reduce__</code>,
203      <code>__reduce_ex__</code>,
204      <code>__repr__</code>,
205      <code>__setattr__</code>,
206      <code>__sizeof__</code>,
207      <code>__str__</code>,
208      <code>__subclasshook__</code>
209      </p>
210    </td>
211  </tr>
212</table>
213<!-- ==================== STATIC METHODS ==================== -->
214<a name="section-StaticMethods"></a>
215<table class="summary" border="1" cellpadding="3"
216       cellspacing="0" width="100%" bgcolor="white">
217<tr bgcolor="#70b0f0" class="table-header">
218  <td colspan="2" class="table-header">
219    <table border="0" cellpadding="0" cellspacing="0" width="100%">
220      <tr valign="top">
221        <td align="left"><span class="table-header">Static Methods</span></td>
222        <td align="right" valign="top"
223         ><span class="options">[<a href="#section-StaticMethods"
224         class="privatelink" onclick="toggle_private();"
225         >hide private</a>]</span></td>
226      </tr>
227    </table>
228  </td>
229</tr>
230<tr>
231    <td width="15%" align="right" valign="top" class="summary">
232      <span class="summary-type">&nbsp;</span>
233    </td><td class="summary">
234      <table width="100%" cellpadding="0" cellspacing="0" border="0">
235        <tr>
236          <td><span class="summary-sig"><a name="from_json"></a><span class="summary-sig-name">from_json</span>(<span class="summary-sig-arg">s</span>,
237        <span class="summary-sig-arg">http</span>,
238        <span class="summary-sig-arg">postproc</span>)</span><br />
239      Returns an HttpRequest populated with info from a JSON object.</td>
240          <td align="right" valign="top">
241            <span class="codelink"><a href="googleapiclient.http-pysrc.html#HttpRequest.from_json">source&nbsp;code</a></span>
242
243          </td>
244        </tr>
245      </table>
246
247    </td>
248  </tr>
249<tr>
250    <td width="15%" align="right" valign="top" class="summary">
251      <span class="summary-type">&nbsp;</span>
252    </td><td class="summary">
253      <table width="100%" cellpadding="0" cellspacing="0" border="0">
254        <tr>
255          <td><span class="summary-sig"><a name="null_postproc"></a><span class="summary-sig-name">null_postproc</span>(<span class="summary-sig-arg">resp</span>,
256        <span class="summary-sig-arg">contents</span>)</span></td>
257          <td align="right" valign="top">
258            <span class="codelink"><a href="googleapiclient.http-pysrc.html#HttpRequest.null_postproc">source&nbsp;code</a></span>
259
260          </td>
261        </tr>
262      </table>
263
264    </td>
265  </tr>
266</table>
267<!-- ==================== PROPERTIES ==================== -->
268<a name="section-Properties"></a>
269<table class="summary" border="1" cellpadding="3"
270       cellspacing="0" width="100%" bgcolor="white">
271<tr bgcolor="#70b0f0" class="table-header">
272  <td colspan="2" class="table-header">
273    <table border="0" cellpadding="0" cellspacing="0" width="100%">
274      <tr valign="top">
275        <td align="left"><span class="table-header">Properties</span></td>
276        <td align="right" valign="top"
277         ><span class="options">[<a href="#section-Properties"
278         class="privatelink" onclick="toggle_private();"
279         >hide private</a>]</span></td>
280      </tr>
281    </table>
282  </td>
283</tr>
284  <tr>
285    <td colspan="2" class="summary">
286    <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
287      <code>__class__</code>
288      </p>
289    </td>
290  </tr>
291</table>
292<!-- ==================== METHOD DETAILS ==================== -->
293<a name="section-MethodDetails"></a>
294<table class="details" border="1" cellpadding="3"
295       cellspacing="0" width="100%" bgcolor="white">
296<tr bgcolor="#70b0f0" class="table-header">
297  <td colspan="2" class="table-header">
298    <table border="0" cellpadding="0" cellspacing="0" width="100%">
299      <tr valign="top">
300        <td align="left"><span class="table-header">Method Details</span></td>
301        <td align="right" valign="top"
302         ><span class="options">[<a href="#section-MethodDetails"
303         class="privatelink" onclick="toggle_private();"
304         >hide private</a>]</span></td>
305      </tr>
306    </table>
307  </td>
308</tr>
309</table>
310<a name="__init__"></a>
311<div>
312<table class="details" border="1" cellpadding="3"
313       cellspacing="0" width="100%" bgcolor="white">
314<tr><td>
315  <table width="100%" cellpadding="0" cellspacing="0" border="0">
316  <tr valign="top"><td>
317  <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">*args</span>,
318        <span class="sig-arg">**kwargs</span>)</span>
319    <br /><em class="fname">(Constructor)</em>
320  </h3>
321  </td><td align="right" valign="top"
322    ><span class="codelink"><a href="googleapiclient.http-pysrc.html#HttpRequest.__init__">source&nbsp;code</a></span>&nbsp;
323    </td>
324  </tr></table>
325
326  <pre class="literalblock">
327Constructor for an HttpRequest.
328
329Args:
330  http: httplib2.Http, the transport object to use to make a request
331  postproc: callable, called on the HTTP response and content to transform
332            it into a data object before returning, or raising an exception
333            on an error.
334  uri: string, the absolute URI to send the request to
335  method: string, the HTTP method to use
336  body: string, the request body of the HTTP request,
337  headers: dict, the HTTP request headers
338  methodId: string, a unique identifier for the API method being called.
339  resumable: MediaUpload, None if this is not a resumbale request.
340
341</pre>
342  <dl class="fields">
343    <dt>Decorators:</dt>
344    <dd><ul class="nomargin-top">
345        <li><code>@util.positional(4)</code></li>
346    </ul></dd>
347    <dt>Overrides:
348        object.__init__
349    </dt>
350  </dl>
351</td></tr></table>
352</div>
353<a name="execute"></a>
354<div>
355<table class="details" border="1" cellpadding="3"
356       cellspacing="0" width="100%" bgcolor="white">
357<tr><td>
358  <table width="100%" cellpadding="0" cellspacing="0" border="0">
359  <tr valign="top"><td>
360  <h3 class="epydoc"><span class="sig"><span class="sig-name">execute</span>(<span class="sig-arg">*args</span>,
361        <span class="sig-arg">**kwargs</span>)</span>
362  </h3>
363  </td><td align="right" valign="top"
364    ><span class="codelink"><a href="googleapiclient.http-pysrc.html#HttpRequest.execute">source&nbsp;code</a></span>&nbsp;
365    </td>
366  </tr></table>
367
368  <pre class="literalblock">
369Execute the request.
370
371Args:
372  http: httplib2.Http, an http object to be used in place of the
373        one the HttpRequest request object was constructed with.
374  num_retries: Integer, number of times to retry with randomized
375        exponential backoff. If all retries fail, the raised HttpError
376        represents the last request. If zero (default), we attempt the
377        request only once.
378
379Returns:
380  A deserialized object model of the response body as determined
381  by the postproc.
382
383Raises:
384  googleapiclient.errors.HttpError if the response was not a 2xx.
385  httplib2.HttpLib2Error if a transport error has occurred.
386
387</pre>
388  <dl class="fields">
389    <dt>Decorators:</dt>
390    <dd><ul class="nomargin-top">
391        <li><code>@util.positional(1)</code></li>
392    </ul></dd>
393  </dl>
394</td></tr></table>
395</div>
396<a name="add_response_callback"></a>
397<div>
398<table class="details" border="1" cellpadding="3"
399       cellspacing="0" width="100%" bgcolor="white">
400<tr><td>
401  <table width="100%" cellpadding="0" cellspacing="0" border="0">
402  <tr valign="top"><td>
403  <h3 class="epydoc"><span class="sig"><span class="sig-name">add_response_callback</span>(<span class="sig-arg">*args</span>,
404        <span class="sig-arg">**kwargs</span>)</span>
405  </h3>
406  </td><td align="right" valign="top"
407    ><span class="codelink"><a href="googleapiclient.http-pysrc.html#HttpRequest.add_response_callback">source&nbsp;code</a></span>&nbsp;
408    </td>
409  </tr></table>
410
411  <pre class="literalblock">
412add_response_headers_callback
413
414Args:
415  cb: Callback to be called on receiving the response headers, of signature:
416
417  def cb(resp):
418    # Where resp is an instance of httplib2.Response
419
420</pre>
421  <dl class="fields">
422    <dt>Decorators:</dt>
423    <dd><ul class="nomargin-top">
424        <li><code>@util.positional(2)</code></li>
425    </ul></dd>
426  </dl>
427</td></tr></table>
428</div>
429<a name="next_chunk"></a>
430<div>
431<table class="details" border="1" cellpadding="3"
432       cellspacing="0" width="100%" bgcolor="white">
433<tr><td>
434  <table width="100%" cellpadding="0" cellspacing="0" border="0">
435  <tr valign="top"><td>
436  <h3 class="epydoc"><span class="sig"><span class="sig-name">next_chunk</span>(<span class="sig-arg">*args</span>,
437        <span class="sig-arg">**kwargs</span>)</span>
438  </h3>
439  </td><td align="right" valign="top"
440    ><span class="codelink"><a href="googleapiclient.http-pysrc.html#HttpRequest.next_chunk">source&nbsp;code</a></span>&nbsp;
441    </td>
442  </tr></table>
443
444  <pre class="literalblock">
445Execute the next step of a resumable upload.
446
447Can only be used if the method being executed supports media uploads and
448the MediaUpload object passed in was flagged as using resumable upload.
449
450Example:
451
452  media = MediaFileUpload('cow.png', mimetype='image/png',
453                          chunksize=1000, resumable=True)
454  request = farm.animals().insert(
455      id='cow',
456      name='cow.png',
457      media_body=media)
458
459  response = None
460  while response is None:
461    status, response = request.next_chunk()
462    if status:
463      print &quot;Upload %d%% complete.&quot; % int(status.progress() * 100)
464
465
466Args:
467  http: httplib2.Http, an http object to be used in place of the
468        one the HttpRequest request object was constructed with.
469  num_retries: Integer, number of times to retry with randomized
470        exponential backoff. If all retries fail, the raised HttpError
471        represents the last request. If zero (default), we attempt the
472        request only once.
473
474Returns:
475  (status, body): (ResumableMediaStatus, object)
476     The body will be None until the resumable media is fully uploaded.
477
478Raises:
479  googleapiclient.errors.HttpError if the response was not a 2xx.
480  httplib2.HttpLib2Error if a transport error has occurred.
481
482</pre>
483  <dl class="fields">
484    <dt>Decorators:</dt>
485    <dd><ul class="nomargin-top">
486        <li><code>@util.positional(1)</code></li>
487    </ul></dd>
488  </dl>
489</td></tr></table>
490</div>
491<a name="_process_response"></a>
492<div class="private">
493<table class="details" border="1" cellpadding="3"
494       cellspacing="0" width="100%" bgcolor="white">
495<tr><td>
496  <table width="100%" cellpadding="0" cellspacing="0" border="0">
497  <tr valign="top"><td>
498  <h3 class="epydoc"><span class="sig"><span class="sig-name">_process_response</span>(<span class="sig-arg">self</span>,
499        <span class="sig-arg">resp</span>,
500        <span class="sig-arg">content</span>)</span>
501  </h3>
502  </td><td align="right" valign="top"
503    ><span class="codelink"><a href="googleapiclient.http-pysrc.html#HttpRequest._process_response">source&nbsp;code</a></span>&nbsp;
504    </td>
505  </tr></table>
506
507  <pre class="literalblock">
508Process the response from a single chunk upload.
509
510Args:
511  resp: httplib2.Response, the response object.
512  content: string, the content of the response.
513
514Returns:
515  (status, body): (ResumableMediaStatus, object)
516     The body will be None until the resumable media is fully uploaded.
517
518Raises:
519  googleapiclient.errors.HttpError if the response was not a 2xx or a 308.
520
521</pre>
522  <dl class="fields">
523  </dl>
524</td></tr></table>
525</div>
526<br />
527<!-- ==================== NAVIGATION BAR ==================== -->
528<table class="navbar" border="0" width="100%" cellpadding="0"
529       bgcolor="#a0c0ff" cellspacing="0">
530  <tr valign="middle">
531  <!-- Home link -->
532      <th>&nbsp;&nbsp;&nbsp;<a
533        href="googleapiclient-module.html">Home</a>&nbsp;&nbsp;&nbsp;</th>
534
535  <!-- Tree link -->
536      <th>&nbsp;&nbsp;&nbsp;<a
537        href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
538
539  <!-- Index link -->
540      <th>&nbsp;&nbsp;&nbsp;<a
541        href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
542
543  <!-- Help link -->
544      <th>&nbsp;&nbsp;&nbsp;<a
545        href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
546
547      <th class="navbar" width="100%"></th>
548  </tr>
549</table>
550<table border="0" cellpadding="0" cellspacing="0" width="100%%">
551  <tr>
552    <td align="left" class="footer">
553    Generated by Epydoc 3.0.1 on Fri Oct  2 20:46:22 2020
554    </td>
555    <td align="right" class="footer">
556      <a target="mainFrame" href="http://epydoc.sourceforge.net"
557        >http://epydoc.sourceforge.net</a>
558    </td>
559  </tr>
560</table>
561
562<script type="text/javascript">
563  <!--
564  // Private objects are initially displayed (because if
565  // javascript is turned off then we want them to be
566  // visible); but by default, we want to hide them.  So hide
567  // them unless we have a cookie that says to show them.
568  checkCookie();
569  // -->
570</script>
571</body>
572</html>
573