1

我需要知道如何在 Django 中通过 Ajax 启动会话。我正在按照下面的描述进行操作,但它不起作用!请求已正确发送,但不启动任何会话。如果直接没有ajax的请求它可以工作!到底是怎么回事?

'# 网址

r'^logout/$', 'autenticacao.views.logout_view'

' # 登录视图

def login_view(request):

    username = request.GET.get('username', '')
    password = request.GET.get('password', '')

    user = authenticate(username=username, password=password)
    if user is not None:
        if user.is_active:
            login(request, user)
            return HttpResponse(user.get_profile().sos_user.name)            
    return HttpResponse('user invalido')

'# html页面中的ajax

$(function(){

 $.get('http://localhost:8000/logout/?username=usuario?>&password=senha', function(data){
   alert(data);
 });
4

1 回答 1

1

你没有打电话给login_view. 您的 ajax 请求将转到/logout/调用autenticacao.views.logout_view.

此外,您的获取网址中的?>afterusername=usuario看起来不正确。

我的猜测是你应该做类似的事情http://localhost:8000/login/?username=usuario&password=senha。(但我需要查看您的登录网址映射以确定)。

此外,出于安全原因,您应该POST输入登录信息并使用,但这是一个不同的问题。HTTPS

于 2010-07-17T01:34:59.060 回答