Reactjs 使用axios发出的请求不起作用,但如果它与XMLHttpRequest一起起作用
我正在执行react with axios的请求,该请求如下所示:Reactjs 使用axios发出的请求不起作用,但如果它与XMLHttpRequest一起起作用,reactjs,axios,Reactjs,Axios,我正在执行react with axios的请求,该请求如下所示: const data= axios.post(route, { username:'admin', password:'123' }) .then(response =>{ console.log(response) }) .catch(err=>{console.log(err.response)
const data= axios.post(route, { username:'admin', password:'123' })
.then(response =>{
console.log(response)
})
.catch(err=>{console.log(err.response)
})
但它给了我400或401的状态。我认为这是与“CORS”有关的,但当我从react使用XMLHttpRequest发出请求时,它是成功的。这里使用XMLHttpRequest发出相同的请求:
var xhr = new XMLHttpRequest();
var user = "admin";
var password = "123";
xhr.open('POST', route, true);
xhr.addEventListener('load', function() {
var responseObject = JSON.parse(this.response);
console.log(responseObject);
if (responseObject.token) {
console.log(responseObject.token);
} else {
console.log('no');
}
});
var sendObject = JSON.stringify({username: user, password: password});
console.log('going to send', sendObject);
xhr.send(sendObject);
如何正确使用axios发出请求
日志:
Axios应该有一个auth参数,如下所示:
auth: {
username: 'janedoe',
password: 's00pers3cret'
},
查看此处的文档:如果在post请求中设置内容类型参数,该如何操作?
你能试试吗
let config = {
headers: {
'Content-Type':'application/json',
}
}
let response = await axios.post(route, { username:'admin', password:'123' }, config);
console.log(response);
这回答了你的问题吗?没有回答我的问题,我尝试了我可用的其他登录api,状态更改为404400是坏请求,404未找到,因此结构不正确,能否粘贴
console.log(route)
的输出?如果我添加内容类型参数,它会在postman中继续正确返回400Works,在问题的版本中,我添加了日志。状态401如果您将内容类型更改为“application/x-www-form-urlencoded”并发送带有查询字符串的参数,您的axios.post是否具有基本身份验证?401是未授权状态