添加CSRF以使用Express Backend创建React App

时间:2018-12-27 02:18:42

标签: javascript node.js express

我对如何在CRA和Express中实施CSRF感到困惑。我一直在做Laravel,而csrf是其中的默认设置。我找到了这个express-csurf,但很明确。如何将CSRF令牌公开给客户端?所以我可以从html这样获取它。有可能吗?

let token = document.head.querySelector('meta[name="csrf-token"]');
const version = 'v1'
const API_URL = (process.env.NODE_ENV === 'test') ? process.env.BASE_URL || (`http://localhost:${process.env.PORT}/api/${version}/`) : `/

axios.defaults.baseURL = API_URL;
axios.defaults.headers.common.Accept = 'application/json';
axios.defaults.headers.common['X-CSRF-TOKEN'] = token.content;
axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';

0 个答案:

没有答案