mirror of
				https://github.com/Tivix/django-rest-auth.git
				synced 2025-10-31 15:57:34 +03:00 
			
		
		
		
	Fix issue with token parsing on access_token flow
This commit is contained in:
		
							parent
							
								
									dd369bd01a
								
							
						
					
					
						commit
						533ffc0567
					
				|  | @ -73,6 +73,7 @@ class SocialLoginSerializer(serializers.Serializer): | ||||||
| 
 | 
 | ||||||
|         adapter = adapter_class(request) |         adapter = adapter_class(request) | ||||||
|         app = adapter.get_provider().get_app(request) |         app = adapter.get_provider().get_app(request) | ||||||
|  |         token_attrs = {} | ||||||
| 
 | 
 | ||||||
|         # More info on code vs access_token |         # More info on code vs access_token | ||||||
|         # http://stackoverflow.com/questions/8666316/facebook-oauth-2-0-code-and-token |         # http://stackoverflow.com/questions/8666316/facebook-oauth-2-0-code-and-token | ||||||
|  | @ -80,6 +81,7 @@ class SocialLoginSerializer(serializers.Serializer): | ||||||
|         # Case 1: We received the access_token |         # Case 1: We received the access_token | ||||||
|         if attrs.get('access_token'): |         if attrs.get('access_token'): | ||||||
|             access_token = attrs.get('access_token') |             access_token = attrs.get('access_token') | ||||||
|  |             token_attrs['access_token'] = access_token | ||||||
| 
 | 
 | ||||||
|         # Case 2: We received the authorization code |         # Case 2: We received the authorization code | ||||||
|         elif attrs.get('code'): |         elif attrs.get('code'): | ||||||
|  | @ -108,8 +110,8 @@ class SocialLoginSerializer(serializers.Serializer): | ||||||
|                 self.callback_url, |                 self.callback_url, | ||||||
|                 scope |                 scope | ||||||
|             ) |             ) | ||||||
|             token = client.get_access_token(code) |             token_attrs = client.get_access_token(code) | ||||||
|             access_token = token['access_token'] |             access_token = token_attrs['access_token'] | ||||||
| 
 | 
 | ||||||
|         else: |         else: | ||||||
|             raise serializers.ValidationError( |             raise serializers.ValidationError( | ||||||
|  | @ -119,7 +121,7 @@ class SocialLoginSerializer(serializers.Serializer): | ||||||
|         # make another minor adjustment, not yet in all-auth. |         # make another minor adjustment, not yet in all-auth. | ||||||
|         # https://github.com/Tivix/django-rest-auth/pull/486 |         # https://github.com/Tivix/django-rest-auth/pull/486 | ||||||
|         # social_token = adapter.parse_token({'access_token': access_token}) |         # social_token = adapter.parse_token({'access_token': access_token}) | ||||||
|         social_token = adapter.parse_token(token) |         social_token = adapter.parse_token(token_attrs) | ||||||
|         social_token.app = app |         social_token.app = app | ||||||
| 
 | 
 | ||||||
|         try: |         try: | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue
	
	Block a user