Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/300.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django用户名在GET请求中为空_Python_Django_Http_Authentication - Fatal编程技术网

Python Django用户名在GET请求中为空

Python Django用户名在GET请求中为空,python,django,http,authentication,Python,Django,Http,Authentication,在我的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 re

在我的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的其他函数中也使用了相同的功能,并且在那里工作得很好。


在涉及GET方法的情况下,有人能帮我获取用户名吗?

您确定用户已通过身份验证吗?根据,空用户名通常表示没有人经过身份验证


如果您的响应是
JsonResponse
,这是否意味着您正在使用某种Ajax来调用它?在这种情况下,默认情况下不会转发凭据。例如,这就是您确定用户已通过身份验证的方式?根据,空用户名通常表示没有人经过身份验证


如果您的响应是
JsonResponse
,这是否意味着您正在使用某种Ajax来调用它?在这种情况下,默认情况下不会转发凭据。例如,这就是请检查用户是否登录的方式

print(request.user)

请检查用户是否登录

print(request.user)

我没有获得用户名的原因是因为我忘了将登录装饰器放在函数顶部

我没有获得用户名的原因是因为我忘了将登录装饰器放在函数顶部

它的打印“AnonymousUser”它的打印“AnonymousUser”当使用GET方法时,request.user.u被验证为false;当使用POST方法时,request.user.u被验证为True。请帮助如何称呼此url?这是浏览器中的链接吗?或者你使用javascript来调用它?不使用js,它是在浏览器中触发的端点。是的,我的管理页面正在运行。你能给我看看你的设置吗?AUTH_USER,SESSION…AUTHENTICATION_BACKENDS=('social_core.BACKENDS.OpenIdAuth','social_core.BACKENDS.google.google.GoogleOpenId','social_core.BACKENDS.google.google.GoogleOAuth2','django.contrib.AUTH.BACKENDS.modelbend',)request.USER.u在使用GET方法时验证为false,在使用POST方法时验证为True。请帮助如何称呼此url?这是浏览器中的链接吗?或者你使用javascript来调用它?不使用js,它是在浏览器中触发的端点。是的,我的管理页面正在运行。你能给我看看你的设置吗?AUTH_USER、SESSION…AUTHENTICATION_BACKENDS=('social_core.BACKENDS.OpenIdAuth'、'social_core.BACKENDS.google.google.GoogleOpenId'、'social_core.BACKENDS.google.google.GoogleOAuth2'、'django.contrib.AUTH.BACKENDS.modelbend')