将csrf令牌存储在元标记中是一种好习惯吗?

如果我在不使用表单的情况下发出POST请求并希望阻止CSRF攻击,我可以做的是在元标记中设置csrf-token,并在触发请求时将其放回标题。 这是一个好习惯吗?

 

使用JQuery将标记放回头部,例如:

 $.ajaxSetup({ headers: { 'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content') } }); 

是的,这是一个好习惯。 如果您使用的是ajax,我认为这是最干净的解决方案。

你也可以把令牌放在表单里面(如果提交整个表单会更方便),但是如果你使用ajax,它只需要去你可以抓住的地方。

在隐藏字段或元标记中都是非常好的选择。