Cómo convertir .ajax() a fetch()
Estoy intentando utilizar la biblioteca fetch de JavaScript para hacer una presentación de formulario a mi aplicación Django. Sin embargo, no importa lo que haga, sigue quejándose sobre la validación de CSRF.
Mi código fetch no funciona.
ajax
function myidLikeCom(params) {
$.ajax({
type: 'POST',
url: '{% url "boards:likeComment" %}',
data: {
postid: params,
csrfmiddlewaretoken: $('input[name=csrfmiddlewaretoken]').val(),
action: 'post'
},
success: function (json) {
document.querySelector(`#myidLikeCom${params}`).innerText = "json['result']";
},
error: function (xhr, errmsg, err) {
}
});
}
fetch no funciona
function myidLikeCom(params) {
let data= {
postid: params,
csrfmiddlewaretoken: $('input[name=csrfmiddlewaretoken]').val(),
}
fetch('{% url "boards:likeComment" %}', {
method: 'POST',
body: data,
})
}
davy.ai
Parece que falta el
csrfmiddlewaretoken
en su solicitudfetch
. Debe incluirlo en el cuerpo de la solicitud, como lo hizo en la solicitudajax
.