什么是csrf
- CSRF全拼为Cross Site Request Forgery,译为跨站请求伪造。指攻击者盗用了你的身份,以你的名义发送恶意请求。
- 包括:以你名义发送邮件,发消息,盗取你的账号,甚至于购买商品,虚拟货币转账…
造成的问题:个人隐私泄露以及财产安全。
如何使用angularjs的CSRF解决方案
在angularjs $http 中有两个xsrf相关配置,一个是xsrfCookieName, 另一个是xsrfHeaderName。只要有使用 $http 的地方,都会将cookie中的csrftoken的值放入header的X-CSRFToken 中发送请求。具体的配置代码如下:
var foo = angular.module('foo', ['bar']);
foo.config(['$httpProvider', function($httpProvider) {
$httpProvider.defaults.xsrfCookieName = 'csrftoken';
$httpProvider.defaults.xsrfHeaderName = 'X-CSRFToken';
}]);