403 ошибка с CSRF при доступе к логину Django с помощью axios
await axios.get("http://localhost:8000/get_csrf_token/").then((res)=>{
console.log(res.data.csrf_token);
axios.defaults.xsrfHeaderName = "X-CSRFTOKEN";
axios.defaults.xsrfCookieName = "csrftoken";
axios.defaults.withCredentials = true;
axios.post('http://localhost:8000/login/',{
username:'admin',
password:'Kv79NExi'
}, {
headers: {
'Content-Type': 'application/json',
'X-CSRFToken': res.data.csrf_token,
}
})
.then((response) => {
log("response login",response.data);
});
});
Я пытаюсь получить доступ к логину django из скрипта командной строки (jest
), а не из браузера, однако он выдает ошибку, подобную этой,
<p>Reason given for failure:</p>\n' +
' <pre>\n' +
' CSRF cookie not set.\n' +
' </pre>\n' +
Выдает ошибку 403, похоже, что отправка csrf_token
корректна.
Где я ошибаюсь?