freeCodeCamp/api-server/server/middlewares/csurf.js

24 lines
568 B
JavaScript
Raw Normal View History

2016-05-03 00:22:56 +00:00
import csurf from 'csurf';
export default function() {
const protection = csurf({
cookie: {
domain: process.env.COOKIE_DOMAIN || 'localhost',
sameSite: 'strict',
secure: process.env.FREECODECAMP_NODE_ENV === 'production'
}
});
2016-05-03 04:11:49 +00:00
return function csrf(req, res, next) {
const { path } = req;
if (
// eslint-disable-next-line max-len
/^\/hooks\/update-paypal$|^\/hooks\/update-stripe$|^\/donate\/charge-stripe$/.test(
path
)
) {
2016-05-03 04:11:49 +00:00
return next();
}
return protection(req, res, next);
};
2016-05-03 00:22:56 +00:00
}