如果我在不使用表单的情况下发出 POST 请求,并且想要防止 CSRF 攻击,我可以做的就是在元标记中设置 csrf-token,并在触发请求时将其放回标头。这是一个好的做法吗?
<meta name="csrf-token" content="xxx">
通过 header 将令牌放回,例如使用 JQuery:
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
是的,如果您使用 AJAX,这是一个很好的做法。您还可以将令牌放在表单内(如果提交整个表单,这会更方便),但如果您使用 AJAX,它只需要去某个地方获取它即可。
在隐藏字段或元标记内都是非常好的选择。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)