Django - начало сеанса по запросу Ajax - PullRequest
1 голос
/ 17 июля 2010

Мне нужно знать, как начать сеанс Ajax в Django. Я делаю точно так, как описано ниже, но это не работает! Запрос отправлен правильно, но не запускайте ни одного сеанса. Если запрос напрямую без ajax, то это работает! Что происходит?

'# urls

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')

'# ajax на html-странице

$(function(){

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

1 Ответ

1 голос
/ 17 июля 2010

Вы не звоните login_view.Ваш запрос ajax направляется на /logout/ URL-адрес, который вызывает autenticacao.views.logout_view.

. Кроме того, ?> после username=usuario выглядит неправильно в вашем URL-адресе получения.

Полагаю, вы должны делать что-то вроде http://localhost:8000/login/?username=usuario&password=senha.(но мне нужно было бы убедиться, что ваше имя входа в систему сопоставлено, чтобы убедиться).

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

...