Angular,Expressjs和Lusca csrf保护

时间:2014-05-19 15:56:17

标签: node.js angularjs express csrf

我正在使用Angularjs和Expressjs(4.x)app调查csrf保护。

我目前正试图让Lusca(https://www.npmjs.org/package/lusca)无法使用标准csrf软件包(https://www.npmjs.org/package/csrf)工作。

我已经像这样包括了lusca:

var lusca = require('lusca');
app.use(lusca.csrf());

在我的Angularjs应用程序中,我在我的主app.js文件中有这个:

app.run(function($rootScope, $http, $cookies, user) {

  $http.defaults.headers.post['x-csrf-token'] = $cookies._csrf;

});

但是,当我尝试向节点服务器发送任何内容时,我总是收到403错误。任何人都可以帮助甚至向我展示标准csrf包的方式吗?

1 个答案:

答案 0 :(得分:0)

你应该阅读

https://docs.angularjs.org/api/ng/service/ $ HTTP

在他们谈论XSRF保护的底部

这将是设置标头和cookie的配置示例

AP.config(['$httpProvider', function($$httpProvider) {
    $httpProvider.defaults.xsrfHeaderName="xsrf header name";
    $httpProvider.defaults.xsrfCookieName="xsrf cookie name";

}]);