我正在使用django为新闻故事创建一个api。我需要一个登录方法,所以我创建了自己的处理程序:
def HandleLogin(request):
if(request.method == 'POST'):
un = request.POST.get('username')
pw = request.POST.get('password')
# data = 'user name = ' + un + ', password = ' + pw
user = authenticate(request, username = un, password = pw)
if user is not None:
if user.is_active:
login(request,user )
if(user.is_authenticated):
# print('Welcome ' + user.username )
http_login_succ = HttpResponse("Welcome "+ user.username)
http_login_succ['Content-type'] = 'text/plain'
http_login_succ.status_code = 200
http_login_succ.reason_phrase = 'OK'
return http_login_succ
else:
return HttpResponse ('disabled account')
else:
return HttpResponse('invalid login')
之后我想只登录用户才能访问发布新闻故事的网站中的点:
def PostStory(request):
if request.user.is_authenticated:
return HttpResponse("Logged in")
#Code when logged in
else:
return HttpResponse("Not Logged in")
然后我登录成功获取“欢迎”用户名消息,但是当访问poststory时,它永远不会识别登录用户。
检查您的会话中间件是否激活并在正确的位置