jQuery POST 使用 Django CSRF - 删除 X-CSRFToken Header 之后?
jQuery POST using Django CSRF - Remove X-CSRFToken Header After?
我正在关注 instructions here。在我 Ajax post 请求包含 CSRF 令牌之前,Django 人员对 运行 说了这句话。
function csrfSafeMethod(method) {
// these HTTP methods do not require CSRF protection
return (/^(GET|HEAD|OPTIONS|TRACE)$/.test(method));
}
$.ajaxSetup({
beforeSend: function(xhr, settings) {
if (!csrfSafeMethod(settings.type) && !this.crossDomain) {
xhr.setRequestHeader("X-CSRFToken", csrftoken);
}
}
});
这有效,但我是否需要在 我的 POST 之后从 headers 中删除该标记?我不希望所有 jQuery post 请求都包含它,因为我认为它可能会泄露令牌。
那么如何在 运行 设置 POST 后撤消 ajax 设置?
我需要这样做吗?
我认为您不需要,因为它会在添加 header.
之前检查它不是 cross-domain 请求
我正在关注 instructions here。在我 Ajax post 请求包含 CSRF 令牌之前,Django 人员对 运行 说了这句话。
function csrfSafeMethod(method) {
// these HTTP methods do not require CSRF protection
return (/^(GET|HEAD|OPTIONS|TRACE)$/.test(method));
}
$.ajaxSetup({
beforeSend: function(xhr, settings) {
if (!csrfSafeMethod(settings.type) && !this.crossDomain) {
xhr.setRequestHeader("X-CSRFToken", csrftoken);
}
}
});
这有效,但我是否需要在 我的 POST 之后从 headers 中删除该标记?我不希望所有 jQuery post 请求都包含它,因为我认为它可能会泄露令牌。
那么如何在 运行 设置 POST 后撤消 ajax 设置?
我需要这样做吗?
我认为您不需要,因为它会在添加 header.
之前检查它不是 cross-domain 请求