Reactjs 使用axios发出的请求不起作用,但如果它与XMLHttpRequest一起起作用

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)

我正在执行react with axios的请求,该请求如下所示:

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是未授权状态