python-social-auth не получает правильные данные Google OAuth2

Я хочу войти в систему пользователя, используяpython-social-auth функциональность для входа в Google Plus в Django. При входе с моего веб-сайта все работает нормально, и правильные данные добавляются в базу данных.

Тем не менее, я хочу пройти аутентификацию и в своем приложении для Android. Пользователь входит в приложение, которое затем отправляет токен доступа в API django, который обрабатывает процесс входа в следующем коде, адаптированном издокументация:

@csrf_exempt
@serengeti_api_request
@psa('social:complete')
def login_social_token(request, backend):
    # Ensure the token has been specified.
    token = request.META.get('HTTP_ACCESSTOKEN')
    if token is None:
        raise SerengetiApiRequestException('Access token is missing!')

    # Login the user for this session
    user = request.backend.do_auth(token)
    if user is None:
        raise SerengetiApiRequestException('Could not authenticate user!')

    login(request, user)

    # Store the email address if one has been specified (e.g. Twitter)
    email = request.META.get('HTTP_EMAIL')
    if email is not None:
        user.email = email
        user.save()

    # Prepare the parameters to be returned
    response = dict({
        'id': user.id,
        'first_name': user.first_name,
        'last_name': user.last_name,
        'api_key': request.session.session_key,
    })

    # Return a 200 status code to signal success.
    return HttpResponse(json.dumps(response, indent=4), status=200)

При входе с веб-сайтаsocial_auth_usersocialauth таблица содержит:

id | provider      | uid       | extra_data
==========================================
10 | google-oauth2 | <myemail> | {"token_type": "Bearer", "access_token": "<token>", "expires": 3600}

Тем не менее, при входе из приложения с использованием вышеуказанной функции операция завершается нормально, но запись в таблице выглядит следующим образом:

id | provider      | uid     | extra_data
=========================================
10 | google-oauth2 | <empty> | {"access_token": "", "expires": null}

Так жеauth_user таблица содержитusername лайкeeed494412obfuscated48bc47dd9b вместо имени пользователя Google Plus иemail поле пустое

Что я делаю не так и как я могу получить ту же функциональность, что и на сайте?

Я хотел бы отметить, что я реализовал аутентификацию Facebook и Twitter из приложения Android, которое вызывает вышеупомянутую функцию и хранит правильные данные, только Google Plus вызывает проблемы.

Ответы на вопрос(2)

Ваш ответ на вопрос