Я пытаюсь реализовать следующий рабочий процесс.
- Заполнить форму HTML
- Отправить
- Конечная точка, которая получает запрос (expressjs), выполняет некоторую обработку и отправляет запрос с
req.body
другому бэкэнду (django)
- Django возвращает ответ на expressjs
Проблема в том, что я застреваю на уровне csrf и более конкретно получаю эту ошибку:
invalid csrf token
403
ForbiddenError: invalid csrf token
Вот код, который я использую для запроса:
router.post('/registration', function (req, res, next) {
axios.post('http://localhost:8000/register_extended/', JSON.stringify(req.body), {
'Content-Type': 'application/json'
}).then(() => {
console.log('success')
}).catch(() => {
console.log('failure')
})
res.send('respond with a resource');
});
});
а вот мое промежуточное ПО
app.use(bodyParser.urlencoded({ extended: true }));
app.use(logger('dev'));
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.use(cookieParser());
app.use(csrfMiddleware);
Как я могу предоставить действительный токен csrf для своих нужд? Аксиос должен сам обращаться с ним, поэтому я выбрал его.