blob: fae2616c79aa84873d60cc5bcdde57e1181c9197 [file] [log] [blame]
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -04001<?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>oauth2client.client.OAuth2WebServerFlow</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
18 <!-- Tree link -->
19 <th>&nbsp;&nbsp;&nbsp;<a
20 href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
21
22 <!-- Index link -->
23 <th>&nbsp;&nbsp;&nbsp;<a
24 href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
25
26 <!-- Help link -->
27 <th>&nbsp;&nbsp;&nbsp;<a
28 href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
29
30 <th class="navbar" width="100%"></th>
31 </tr>
32</table>
33<table width="100%" cellpadding="0" cellspacing="0">
34 <tr valign="top">
35 <td width="100%">
36 <span class="breadcrumbs">
37 <a href="oauth2client-module.html">Package&nbsp;oauth2client</a> ::
38 <a href="oauth2client.client-module.html">Module&nbsp;client</a> ::
39 Class&nbsp;OAuth2WebServerFlow
40 </span>
41 </td>
42 <td>
43 <table cellpadding="0" cellspacing="0">
44 <!-- hide/show private -->
45 <tr><td align="right"><span class="options">[<a href="javascript:void(0);" class="privatelink"
46 onclick="toggle_private();">hide&nbsp;private</a>]</span></td></tr>
47 <tr><td align="right"><span class="options"
48 >[<a href="frames.html" target="_top">frames</a
49 >]&nbsp;|&nbsp;<a href="oauth2client.client.OAuth2WebServerFlow-class.html"
50 target="_top">no&nbsp;frames</a>]</span></td></tr>
51 </table>
52 </td>
53 </tr>
54</table>
55<!-- ==================== CLASS DESCRIPTION ==================== -->
56<h1 class="epydoc">Class OAuth2WebServerFlow</h1><p class="nomargin-top"><span class="codelink"><a href="oauth2client.client-pysrc.html#OAuth2WebServerFlow">source&nbsp;code</a></span></p>
57<center>
58<center> <map id="uml_class_diagram_for_oauth2cl_20" name="uml_class_diagram_for_oauth2cl_20">
59<area shape="rect" href="oauth2client.client.OAuth2WebServerFlow-class.html#__init__" title="Constructor for OAuth2WebServerFlow." alt="" coords="17,97,1089,116"/>
60<area shape="rect" href="oauth2client.client.OAuth2WebServerFlow-class.html#step1_get_authorize_url" title="Returns a URI to redirect to the provider." alt="" coords="17,116,1089,135"/>
61<area shape="rect" href="oauth2client.client.OAuth2WebServerFlow-class.html#step2_exchange" title="Exhanges a code for OAuth2Credentials." alt="" coords="17,135,1089,153"/>
62<area shape="rect" href="oauth2client.client.OAuth2WebServerFlow-class.html" title="Does the Web Server Flow for OAuth 2.0." alt="" coords="16,72,1091,155"/>
63<area shape="rect" href="oauth2client.client.Flow-class.html" title="Base class for all Flow objects." alt="" coords="539,11,568,43"/>
64</map>
65 <img src="uml_class_diagram_for_oauth2cl_20.gif" alt='' usemap="#uml_class_diagram_for_oauth2cl_20" ismap="ismap" class="graph-without-title" />
66</center>
67</center>
68<hr />
69<pre class="literalblock">
70Does the Web Server Flow for OAuth 2.0.
71
72OAuth2Credentials objects may be safely pickled and unpickled.
73
74</pre>
75
76<!-- ==================== INSTANCE METHODS ==================== -->
77<a name="section-InstanceMethods"></a>
78<table class="summary" border="1" cellpadding="3"
79 cellspacing="0" width="100%" bgcolor="white">
80<tr bgcolor="#70b0f0" class="table-header">
81 <td colspan="2" class="table-header">
82 <table border="0" cellpadding="0" cellspacing="0" width="100%">
83 <tr valign="top">
84 <td align="left"><span class="table-header">Instance Methods</span></td>
85 <td align="right" valign="top"
86 ><span class="options">[<a href="#section-InstanceMethods"
87 class="privatelink" onclick="toggle_private();"
88 >hide private</a>]</span></td>
89 </tr>
90 </table>
91 </td>
92</tr>
93<tr>
94 <td width="15%" align="right" valign="top" class="summary">
95 <span class="summary-type">&nbsp;</span>
96 </td><td class="summary">
97 <table width="100%" cellpadding="0" cellspacing="0" border="0">
98 <tr>
99 <td><span class="summary-sig"><a href="oauth2client.client.OAuth2WebServerFlow-class.html#__init__" class="summary-sig-name">__init__</a>(<span class="summary-sig-arg">self</span>,
100 <span class="summary-sig-arg">client_id</span>,
101 <span class="summary-sig-arg">client_secret</span>,
102 <span class="summary-sig-arg">scope</span>,
103 <span class="summary-sig-arg">user_agent</span>=<span class="summary-sig-default">None</span>,
104 <span class="summary-sig-arg">auth_uri</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string">https://accounts.google.com/o/oauth2/auth</code><code class="variable-quote">'</code></span>,
105 <span class="summary-sig-arg">token_uri</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string">https://accounts.google.com/o/oauth2/token</code><code class="variable-quote">'</code></span>,
106 <span class="summary-sig-arg">**kwargs</span>)</span><br />
107 Constructor for OAuth2WebServerFlow.</td>
108 <td align="right" valign="top">
109 <span class="codelink"><a href="oauth2client.client-pysrc.html#OAuth2WebServerFlow.__init__">source&nbsp;code</a></span>
110
111 </td>
112 </tr>
113 </table>
114
115 </td>
116 </tr>
117<tr>
118 <td width="15%" align="right" valign="top" class="summary">
119 <span class="summary-type">&nbsp;</span>
120 </td><td class="summary">
121 <table width="100%" cellpadding="0" cellspacing="0" border="0">
122 <tr>
123 <td><span class="summary-sig"><a href="oauth2client.client.OAuth2WebServerFlow-class.html#step1_get_authorize_url" class="summary-sig-name">step1_get_authorize_url</a>(<span class="summary-sig-arg">self</span>,
124 <span class="summary-sig-arg">redirect_uri</span>=<span class="summary-sig-default"><code class="variable-quote">'</code><code class="variable-string">urn:ietf:wg:oauth:2.0:oob</code><code class="variable-quote">'</code></span>)</span><br />
125 Returns a URI to redirect to the provider.</td>
126 <td align="right" valign="top">
127 <span class="codelink"><a href="oauth2client.client-pysrc.html#OAuth2WebServerFlow.step1_get_authorize_url">source&nbsp;code</a></span>
128
129 </td>
130 </tr>
131 </table>
132
133 </td>
134 </tr>
135<tr>
136 <td width="15%" align="right" valign="top" class="summary">
137 <span class="summary-type">&nbsp;</span>
138 </td><td class="summary">
139 <table width="100%" cellpadding="0" cellspacing="0" border="0">
140 <tr>
141 <td><span class="summary-sig"><a href="oauth2client.client.OAuth2WebServerFlow-class.html#step2_exchange" class="summary-sig-name">step2_exchange</a>(<span class="summary-sig-arg">self</span>,
142 <span class="summary-sig-arg">code</span>,
143 <span class="summary-sig-arg">http</span>=<span class="summary-sig-default">None</span>)</span><br />
144 Exhanges a code for OAuth2Credentials.</td>
145 <td align="right" valign="top">
146 <span class="codelink"><a href="oauth2client.client-pysrc.html#OAuth2WebServerFlow.step2_exchange">source&nbsp;code</a></span>
147
148 </td>
149 </tr>
150 </table>
151
152 </td>
153 </tr>
154 <tr>
155 <td colspan="2" class="summary">
156 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
157 <code>__delattr__</code>,
158 <code>__format__</code>,
159 <code>__getattribute__</code>,
160 <code>__hash__</code>,
161 <code>__new__</code>,
162 <code>__reduce__</code>,
163 <code>__reduce_ex__</code>,
164 <code>__repr__</code>,
165 <code>__setattr__</code>,
166 <code>__sizeof__</code>,
167 <code>__str__</code>,
168 <code>__subclasshook__</code>
169 </p>
170 </td>
171 </tr>
172</table>
173<!-- ==================== PROPERTIES ==================== -->
174<a name="section-Properties"></a>
175<table class="summary" border="1" cellpadding="3"
176 cellspacing="0" width="100%" bgcolor="white">
177<tr bgcolor="#70b0f0" class="table-header">
178 <td colspan="2" class="table-header">
179 <table border="0" cellpadding="0" cellspacing="0" width="100%">
180 <tr valign="top">
181 <td align="left"><span class="table-header">Properties</span></td>
182 <td align="right" valign="top"
183 ><span class="options">[<a href="#section-Properties"
184 class="privatelink" onclick="toggle_private();"
185 >hide private</a>]</span></td>
186 </tr>
187 </table>
188 </td>
189</tr>
190 <tr>
191 <td colspan="2" class="summary">
192 <p class="indent-wrapped-lines"><b>Inherited from <code>object</code></b>:
193 <code>__class__</code>
194 </p>
195 </td>
196 </tr>
197</table>
198<!-- ==================== METHOD DETAILS ==================== -->
199<a name="section-MethodDetails"></a>
200<table class="details" border="1" cellpadding="3"
201 cellspacing="0" width="100%" bgcolor="white">
202<tr bgcolor="#70b0f0" class="table-header">
203 <td colspan="2" class="table-header">
204 <table border="0" cellpadding="0" cellspacing="0" width="100%">
205 <tr valign="top">
206 <td align="left"><span class="table-header">Method Details</span></td>
207 <td align="right" valign="top"
208 ><span class="options">[<a href="#section-MethodDetails"
209 class="privatelink" onclick="toggle_private();"
210 >hide private</a>]</span></td>
211 </tr>
212 </table>
213 </td>
214</tr>
215</table>
216<a name="__init__"></a>
217<div>
218<table class="details" border="1" cellpadding="3"
219 cellspacing="0" width="100%" bgcolor="white">
220<tr><td>
221 <table width="100%" cellpadding="0" cellspacing="0" border="0">
222 <tr valign="top"><td>
223 <h3 class="epydoc"><span class="sig"><span class="sig-name">__init__</span>(<span class="sig-arg">self</span>,
224 <span class="sig-arg">client_id</span>,
225 <span class="sig-arg">client_secret</span>,
226 <span class="sig-arg">scope</span>,
227 <span class="sig-arg">user_agent</span>=<span class="sig-default">None</span>,
228 <span class="sig-arg">auth_uri</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string">https://accounts.google.com/o/oauth2/auth</code><code class="variable-quote">'</code></span>,
229 <span class="sig-arg">token_uri</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string">https://accounts.google.com/o/oauth2/token</code><code class="variable-quote">'</code></span>,
230 <span class="sig-arg">**kwargs</span>)</span>
231 <br /><em class="fname">(Constructor)</em>
232 </h3>
233 </td><td align="right" valign="top"
234 ><span class="codelink"><a href="oauth2client.client-pysrc.html#OAuth2WebServerFlow.__init__">source&nbsp;code</a></span>&nbsp;
235 </td>
236 </tr></table>
237
238 <pre class="literalblock">
239Constructor for OAuth2WebServerFlow.
240
241Args:
242 client_id: string, client identifier.
243 client_secret: string client secret.
244 scope: string or list of strings, scope(s) of the credentials being
245 requested.
246 user_agent: string, HTTP User-Agent to provide for this application.
247 auth_uri: string, URI for authorization endpoint. For convenience
248 defaults to Google's endpoints but any OAuth 2.0 provider can be used.
249 token_uri: string, URI for token endpoint. For convenience
250 defaults to Google's endpoints but any OAuth 2.0 provider can be used.
251 **kwargs: dict, The keyword arguments are all optional and required
252 parameters for the OAuth calls.
253
254</pre>
255 <dl class="fields">
256 <dt>Overrides:
257 object.__init__
258 </dt>
259 </dl>
260</td></tr></table>
261</div>
262<a name="step1_get_authorize_url"></a>
263<div>
264<table class="details" border="1" cellpadding="3"
265 cellspacing="0" width="100%" bgcolor="white">
266<tr><td>
267 <table width="100%" cellpadding="0" cellspacing="0" border="0">
268 <tr valign="top"><td>
269 <h3 class="epydoc"><span class="sig"><span class="sig-name">step1_get_authorize_url</span>(<span class="sig-arg">self</span>,
270 <span class="sig-arg">redirect_uri</span>=<span class="sig-default"><code class="variable-quote">'</code><code class="variable-string">urn:ietf:wg:oauth:2.0:oob</code><code class="variable-quote">'</code></span>)</span>
271 </h3>
272 </td><td align="right" valign="top"
273 ><span class="codelink"><a href="oauth2client.client-pysrc.html#OAuth2WebServerFlow.step1_get_authorize_url">source&nbsp;code</a></span>&nbsp;
274 </td>
275 </tr></table>
276
277 <pre class="literalblock">
278Returns a URI to redirect to the provider.
279
280Args:
281 redirect_uri: string, Either the string 'urn:ietf:wg:oauth:2.0:oob' for
282 a non-web-based application, or a URI that handles the callback from
283 the authorization server.
284
285If redirect_uri is 'urn:ietf:wg:oauth:2.0:oob' then pass in the
286generated verification code to step2_exchange,
287otherwise pass in the query parameters received
288at the callback uri to step2_exchange.
289
290</pre>
291 <dl class="fields">
292 </dl>
293</td></tr></table>
294</div>
295<a name="step2_exchange"></a>
296<div>
297<table class="details" border="1" cellpadding="3"
298 cellspacing="0" width="100%" bgcolor="white">
299<tr><td>
300 <table width="100%" cellpadding="0" cellspacing="0" border="0">
301 <tr valign="top"><td>
302 <h3 class="epydoc"><span class="sig"><span class="sig-name">step2_exchange</span>(<span class="sig-arg">self</span>,
303 <span class="sig-arg">code</span>,
304 <span class="sig-arg">http</span>=<span class="sig-default">None</span>)</span>
305 </h3>
306 </td><td align="right" valign="top"
307 ><span class="codelink"><a href="oauth2client.client-pysrc.html#OAuth2WebServerFlow.step2_exchange">source&nbsp;code</a></span>&nbsp;
308 </td>
309 </tr></table>
310
311 <pre class="literalblock">
312Exhanges a code for OAuth2Credentials.
313
314Args:
315 code: string or dict, either the code as a string, or a dictionary
316 of the query parameters to the redirect_uri, which contains
317 the code.
318 http: httplib2.Http, optional http instance to use to do the fetch
319
320</pre>
321 <dl class="fields">
322 </dl>
323</td></tr></table>
324</div>
325<br />
326<!-- ==================== NAVIGATION BAR ==================== -->
327<table class="navbar" border="0" width="100%" cellpadding="0"
328 bgcolor="#a0c0ff" cellspacing="0">
329 <tr valign="middle">
330
331 <!-- Tree link -->
332 <th>&nbsp;&nbsp;&nbsp;<a
333 href="module-tree.html">Trees</a>&nbsp;&nbsp;&nbsp;</th>
334
335 <!-- Index link -->
336 <th>&nbsp;&nbsp;&nbsp;<a
337 href="identifier-index.html">Indices</a>&nbsp;&nbsp;&nbsp;</th>
338
339 <!-- Help link -->
340 <th>&nbsp;&nbsp;&nbsp;<a
341 href="help.html">Help</a>&nbsp;&nbsp;&nbsp;</th>
342
343 <th class="navbar" width="100%"></th>
344 </tr>
345</table>
346<table border="0" cellpadding="0" cellspacing="0" width="100%%">
347 <tr>
348 <td align="left" class="footer">
Joe Gregorio66212032012-06-14 09:10:14 -0400349 Generated by Epydoc 3.0.1 on Thu Jun 14 08:01:57 2012
Joe Gregorio5dc0f5c2012-06-05 13:34:31 -0400350 </td>
351 <td align="right" class="footer">
352 <a target="mainFrame" href="http://epydoc.sourceforge.net"
353 >http://epydoc.sourceforge.net</a>
354 </td>
355 </tr>
356</table>
357
358<script type="text/javascript">
359 <!--
360 // Private objects are initially displayed (because if
361 // javascript is turned off then we want them to be
362 // visible); but by default, we want to hide them. So hide
363 // them unless we have a cookie that says to show them.
364 checkCookie();
365 // -->
366</script>
367</body>
368</html>