Javascript Axios:基本身份验证无法处理GET请求
我有一个带有基本身份验证的axios get请求,但我一直在返回401状态码。如果我在做post请求,我的代码是有效的,所以我不知道我在这里做错了什么 我的后端代码:Javascript Axios:基本身份验证无法处理GET请求,javascript,node.js,reactjs,axios,Javascript,Node.js,Reactjs,Axios,我有一个带有基本身份验证的axios get请求,但我一直在返回401状态码。如果我在做post请求,我的代码是有效的,所以我不知道我在这里做错了什么 我的后端代码: app.get('/api/find-user', (req, res) => { const username = req.body.username; axios.get('my-url', username, { auth:{ username: 'my-user
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.log(resp);
})
.catch(error => {
console.log(error)
})
}
我的前端代码:
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.log(resp);
})
.catch(error => {
console.log(error)
})
}
同样,当我发布一个帖子来创建一个新用户时,它确实起作用,但当我发出GET请求时,它总是说我没有授权
编辑:如果你想放弃投票,就要足够成熟,解释原因。这里有很多潜在的原因。我认为说明您试图访问的API可能会有所帮助。例如:
- 您是否确实在API服务器上为您的帐户授予了读取权限
- 您的POST请求没有使用密码,因此您的密码对于GET是否绝对正确
const usernamePasswordBuffer = Buffer.from(username + ':' + password);
const base64data = usernamePasswordBuffer.toString('base64');
const axiosObject = axios.create({
headers: {
'Content-Type': 'application/json',
'Authorization': `Basic ${base64data}`,
}
});
因为Axios需要使用用户名和密码“加密”身份验证。我使用的是Jira api,我遇到了同样的问题,只是安装了
qs
并将主体解析为:let body=qs.stringify(params)
,因为参数是我的用户名和密码。这真的很有帮助。