@@ -156,6 +156,10 @@ def __init__(self,
156
156
#: Object used to construct signatures with.
157
157
self .signature_obj = signature_obj
158
158
159
+ #: Request and access token responses.
160
+ self .request_token_response = None
161
+ self .access_token_response = None
162
+
159
163
super (OAuth1Service , self ).__init__ (name ,
160
164
base_url ,
161
165
authorize_url )
@@ -206,7 +210,10 @@ def get_raw_request_token(self, method='GET', **kwargs):
206
210
raise TypeError ('request_token_url must not be None' )
207
211
208
212
session = self .get_session ()
209
- return session .request (method , self .request_token_url , ** kwargs )
213
+ self .request_token_response = session .request (method ,
214
+ self .request_token_url ,
215
+ ** kwargs )
216
+ return self .request_token_response
210
217
211
218
def get_request_token (self ,
212
219
method = 'GET' ,
@@ -279,7 +286,10 @@ def get_raw_access_token(self,
279
286
raise TypeError ('access_token_url must not be None' )
280
287
281
288
session = self .get_session ((request_token , request_token_secret ))
282
- return session .request (method , self .access_token_url , ** kwargs )
289
+ self .access_token_response = session .request (method ,
290
+ self .access_token_url ,
291
+ ** kwargs )
292
+ return self .access_token_response
283
293
284
294
def get_access_token (self ,
285
295
request_token ,
@@ -347,7 +357,14 @@ def get_auth_session(self,
347
357
request_token_secret ,
348
358
method = method ,
349
359
** kwargs )
350
- return self .get_session (token )
360
+ session = self .get_session (token )
361
+
362
+ if self .request_token_response :
363
+ session .request_token_response = self .request_token_response
364
+ if self .access_token_response :
365
+ session .access_token_response = self .access_token_response
366
+
367
+ return session
351
368
352
369
353
370
class OAuth2Service (Service ):
@@ -435,6 +452,9 @@ def __init__(self,
435
452
#: Object used to construct sessions with.
436
453
self .session_obj = session_obj or OAuth2Session
437
454
455
+ #: Access token response.
456
+ self .access_token_response = None
457
+
438
458
super (OAuth2Service , self ).__init__ (name ,
439
459
base_url ,
440
460
authorize_url )
@@ -493,7 +513,10 @@ def get_raw_access_token(self, method='POST', **kwargs):
493
513
'client_secret' : self .client_secret })
494
514
495
515
session = self .get_session ()
496
- return session .request (method , self .access_token_url , ** kwargs )
516
+ self .access_token_response = session .request (method ,
517
+ self .access_token_url ,
518
+ ** kwargs )
519
+ return self .access_token_response
497
520
498
521
def get_access_token (self ,
499
522
method = 'POST' ,
@@ -530,7 +553,12 @@ def get_auth_session(self, method='POST', **kwargs):
530
553
:param \*\*kwargs: Optional arguments. Same as Requests.
531
554
:type \*\*kwargs: dict
532
555
'''
533
- return self .get_session (self .get_access_token (method , ** kwargs ))
556
+ session = self .get_session (self .get_access_token (method , ** kwargs ))
557
+
558
+ if self .access_token_response :
559
+ session .access_token_response = self .access_token_response
560
+
561
+ return session
534
562
535
563
536
564
class OflyService (Service ):
0 commit comments