У объекта 'HttpResponseRedirect' нет атрибута 'authorize' Python Django youtube-api Web

Я не могу получить разрешение. Выдается эта ошибка. Что делать?

Я вызвал функцию get_user_info, передав в качестве аргументов первичный ключ пользователя и его токен. Затем в функции get_user_info вызывается функция get_service для получения доступа к учетной записи пользователя на YouTube. Проблема возникает, когда я пытаюсь перенаправить пользователя на страницу с разрешением на получение информации о его аккаунте.

TOKEN_FILE = json.dumps(GlobalSettings.objects.first().secret_token)
APP_TOKEN_FILE = json.loads(TOKEN_FILE)

SCOPES = ["https://www.googleapis.com/auth/youtube.readonly"]


def get_creds_saved(current_user_pk, USER_TOKEN):
    creds = None

    if USER_TOKEN is not None:
        creds = Credentials.from_authorized_user_info(USER_TOKEN, SCOPES)

    # If there are no (valid) credentials available, let the user log in.
    if not creds or not creds.valid:

        if creds and creds.expired and creds.refresh_token:
            creds.refresh(Request())

        else:
            flow = InstalledAppFlow.from_client_config(APP_TOKEN_FILE, SCOPES)
            flow.redirect_uri = 'https://oxy-cash.ru/earnmoney/'

            authorization_url, state = flow.authorization_url(
                access_type='offline',
                include_granted_scopes='true')
            
            return redirect(authorization_url)

        # user = CustomUser.objects.get(pk=current_user_pk)
        # user.user_token = creds.to_json()
        # user.save()

    return creds


def get_service(current_user_pk, USER_TOKEN):
    creds = get_creds_saved(current_user_pk=current_user_pk, USER_TOKEN=USER_TOKEN)
    service = build('youtube', 'v3', credentials=creds)
    return service


def get_user_info(current_user_pk, USER_TOKEN):
    channel = get_service(current_user_pk=current_user_pk, USER_TOKEN=USER_TOKEN).channels().list(part="snippet,contentDetails,statistics", mine=True).execute()

    info = {
        'username': channel['items'][0]['snippet']['title'],
        'photo': channel['items'][0]['snippet']['thumbnails']['default']['url']
    }

    return info

def app_earnmoney(request):
    if request.user.is_authenticated:
       current_user = CustomUser.objects.get(pk=request.user.pk)
    
       is_next_day(current_user)
    
       info = get_user_info(current_user_pk=request.user.pk, USER_TOKEN=current_user.user_token)

Ошибка

Вернуться на верх