Я хочу сделать запрос POST
на мой сервер, используя метод fetch
. Если запрос был успешным, он возвращает код состояния 200
с данными. Если произошла ошибка, он возвращает любой код состояния, кроме 200
с message
.
Вот мой код JS:
class Ajax{
static Post(url, data, success, error=null){
const csrftoken = data["csrfmiddlewaretoken"];
delete data["csrfmiddlewaretoken"];
fetch(url, {
method: "POST",
credentials: 'same-origin',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json',
"X-CSRFToken": csrftoken
},
body: JSON.stringify(data)
})
.then(response => {
const data = response.json();
if (response.ok){
return data
} else {
throw {"name": "ResponseNotOkError", "message": data["message"], "status": response.status};
}
})
.then(success)
.catch(err => {
if (error !== null){
error(err.message, err.status); // custom function
} else {
TinyText.Create(err.message); // Showing error
}
});
}
}
Для отладки я вставил его в первую строкупосле моей функции ajax в моем проекте Django:
return JsonResponse({
"message": "Blablablabla"
}, status=400)
Я не знаю, как получить доступ к этому message
.