Как передать токен авторизации из ReactJS в запрос NodeJS - PullRequest
0 голосов
/ 05 июня 2019

Я пытаюсь передать 'token_mailchimp' из запроса axios get в запрос nodejs get

На данный момент я передаю токен аутентификации из переменной непосредственно в app.js в моем проекте node / express.

app.js в узле / экспресс-проекте

app.get('/mailchimp/campaigns', checkAuth, function (req, res) {
    request
        .get('https://' + mailchimpInstance + '.api.mailchimp.com/3.0/campaigns')
        .set('Content-Type', 'application/json;charset=utf-8')
        .set('Authorization', 'Basic '+token_mailchimp)
        .end((err, result) => {
            if (err) {
                res.status(500).json(err);
            } else {
                res.json(result.body);
            }
        });
});

axios получить запрос в проекте ReactJS

.get('http://localhost:8081/mailchimp/campaigns',
                { headers: {"Authorization" : `Bearer `+jwt_token} })
            .then(({ data })=> {
                this.setState({
                    campaigns: data.campaigns
                });
            })
            .catch((err)=> {})

Как мне перейти от axios, запросить токен авторизации длязапрос /mailchimp/campaigns?

1 Ответ

2 голосов
/ 05 июня 2019

Вы можете отправить новый пользовательский заголовок, например x-api-token

{ headers: {"Authorization" : Bearer+jwt_token, "x-api-token" : "your_token"} }

Затем в app.js получите доступ к заголовкам из запроса,

const {headers} = req;

Затем используйте это в своем запросе API

.set('Authorization',`Basic ${headers["x-api-token"]}`)

Примечание. Если вы используете плагин cors, убедитесь, что он разрешает прохождение этого заголовка. Вы можете добавить заголовок x-api-token вручную в конфигурации cors, если это необходимо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...