Отправить запрос от конечной точки expressjs на django - PullRequest
0 голосов
/ 12 мая 2019

Я пытаюсь реализовать следующий рабочий процесс.

  • Заполнить форму 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 для своих нужд? Аксиос должен сам обращаться с ним, поэтому я выбрал его.

...