Создайте логин на Dajaxice используя запрос

Я читал о входе в систему с использованием запросов, и ни одна из них не работала на этой странице входа в Dajaxice. Действительный запрос на вход в систему выглядит следующим образом.

Заголовки запроса

Accept  */*
Accept-Encoding gzip, deflate, br
Accept-Language en,tr;q=0.7,en-US;q=0.3
Cache-Control no-cache
Connection keep-alive
Content-Length 102
Content-Type application/x-www-form-urlencoded
Cookie csrftoken=gCNWhXrHMgtMm6sfMR5y…vBvV9oE1hjthc6c2MicBzXSCBQcEo
Host xxxxxxxxx
Pragma no-cache
Referer https://xxxxxx.com/login/?next=/
User-Agent Mozilla/5.0 (X11; Ubuntu; Linu…) Gecko/20100101 Firefox/59.0
X-CSRFToken gCNWhXrHMgtMm6sfMR5yHBM1lQ5Plg…vBvV9oE1hjthc6c2MicBzXSCBQcEo
X-Requested-With XMLHttpRequest

Запрос куки

csrftoken gCNWhXrHMgtMm6sfMR5yHBM1lQ5Plg26u1JvBvV9oE1hjthc6c2MicBzXSCBQcEo

Params

argv : {"username":"myusername","password":"my password","next_p":"/"}

Я старался:

session = requests.Session()
URL = 'www.xxx.com'
session.get(URL)
csrftoken = session.cookies['csrftoken']
cookies = {'csrftoken': csrftoken}
auth = {
    'username': username,
    'password': password,
    'next_p': '/academmy/',
}
result = session.post(URL,data=auth, cookies=cookies,)

Я понимаю, что login_user() принимает как минимум 3 аргумента (1 дано). Мне кажется, я не могу передать имя пользователя, пароль и следующий параметр для просмотра. Я перепробовал много вариантов этих функций. argv: {"username":"myusername","password":"my password","next_p":"/"} Это странно, обычно есть ввод имени пользователя и пароля next_p, но эти входы сначала объединяются и называются argv и отправлено в Django View.

Я нашел ниже коды в интернете о том, как dajaxice делает запрос по почте.

var send_data = [];
send_data.push('argv='+encodeURIComponent(JSON.stringify(argv)));
send_data = send_data.join('&');
var oXMLHttpRequest = new XMLHttpRequest;
oXMLHttpRequest.open('POST', '/dajaxice/'+dajaxice_function+'/');

что-то вроде этого.

0 ответов

Другие вопросы по тегам