From 55cc830fdb12bbaa82d400f9a40e90bd09bfc901 Mon Sep 17 00:00:00 2001 From: Philippe Luickx Date: Sun, 12 Apr 2015 20:34:21 +0300 Subject: [PATCH] callback url fix --- rest_auth/registration/serializers.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/rest_auth/registration/serializers.py b/rest_auth/registration/serializers.py index 2061753..6d56599 100644 --- a/rest_auth/registration/serializers.py +++ b/rest_auth/registration/serializers.py @@ -36,9 +36,14 @@ class SocialLoginSerializer(serializers.Serializer): access_token = attrs.get('access_token') # We did not get the access_token, but authorization code instead elif('code' in attrs): - code = attrs.get('code') + self.callback_url = getattr(view, 'callback_url', None) - callback_url = self.callback_url + if not self.callback_url: + raise serializers.ValidationError( + 'Define callback_url in view' + ) + + code = attrs.get('code') provider = self.adapter.get_provider() scope = provider.get_scope(request) @@ -48,7 +53,7 @@ class SocialLoginSerializer(serializers.Serializer): app.secret, self.adapter.access_token_method, self.adapter.access_token_url, - callback_url, + self.callback_url, scope ) token = client.get_access_token(code)