У меня есть запрос на получение axios с базовой аутентификацией, но я продолжаю получать код состояния 401. Мой код работает, если я делаю почтовый запрос, поэтому я не знаю, что я здесь делаю не так.
Мой бэкэнд-код:
app.get('/api/find-user', (req, res) => {
const username = req.body.username;
axios.get('my-url', username, {
auth:{
username: 'my-username',
password: 'my-password'
}
})
.then(resp => {
res.json({resp});
})
.catch(error => {
res.send(error.response.status);
})
});
Мой код внешнего интерфейса:
findUser(user){
const username = user;
axios.get('/api/find-user', {username})
.then(resp => {
console.info(resp);
})
.catch(error => {
console.info(error)
})
}
Опять же, когда я делаю сообщение для создания нового пользователя, он действительно работает, но когда я делаю запрос GET, он продолжает говорить, что я не авторизован.
Обновлено: если вы чувствуете, что хотите проголосовать против, будьте достаточно взрослыми, чтобы объяснить, почему.



![Безумие обратных вызовов в javascript [JS]](https://i.imgur.com/WsjO6zJb.png)


Здесь довольно много потенциальных причин. Думаю, было бы полезно указать, к какому API вы пытаетесь получить доступ. Например:
Я использую Jira api, docs.atlassian.com/software/jira/docs/api/REST/7.10.0/#api/2 /…
Вам нужно сделать:
const usernamePasswordBuffer = Buffer.from(username + ':' + password);
const base64data = usernamePasswordBuffer.toString('base64');
const axiosObject = axios.create({
headers: {
'Content-Type': 'application/json',
'Authorization': `Basic ${base64data}`,
}
});
Потому что Axios требует, чтобы авторизация была «зашифрована» и с именем пользователя, и с паролем.
Это действительно помогло.
У меня была та же проблема, только что установил
qsи проанализировал тело как:let body = qs.stringify(params), поскольку в параметрах были мое имя пользователя и пароль. npmjs.com/package/qs