Django имя пользователя пусто в запросе GET - PullRequest
1 голос
/ 01 апреля 2020

В моем views.py у меня есть функция, которая использует метод GET, как показано ниже.

def status_codes(request):
try:
    url = request.GET.get('url')
    urls = linksextraction(url)
    url_codes.objects.filter().delete()
    print(request.user.username) # prints empty string
    # do something
    return JsonResponse(url_final_data)
except Exception:
    return JsonResponse({"message": "Invalid url"})

Когда я пытаюсь распечатать текущего вошедшего в систему пользователя, печатает пустую строку . Я использовал то же самое в других функциях, которые используют POST, и там он прекрасно работает.

Может кто-нибудь помочь мне получить имя пользователя в таком сценарии ios, где он использует метод GET?

Ответы [ 2 ]

0 голосов
/ 01 апреля 2020

Пожалуйста, проверьте, что пользователь является логином.

print(request.user)
0 голосов
/ 01 апреля 2020

Вы уверены, что пользователь аутентифицирован? Согласно Анонимный пользователь делает c, пустое имя пользователя часто показывает, что никто не аутентифицирован.

Если ваш ответ JsonResponse, означает ли это, что вы используете какой-то Ajax чтобы назвать это? В этом случае учетные данные не передаются по умолчанию. Например, вот как это можно сделать с помощью fetch

...