Node.js axios.get返回错误代码400,但随后正确解析为代码200

Node.js axios.get返回错误代码400,但随后正确解析为代码200,node.js,axios,http-status-code-400,http-status-code-200,Node.js,Axios,Http Status Code 400,Http Status Code 200,我试图在我的代码中进行axios调用,以获取csv文件并将其转换为JSON。 当代码独立运行时,我能够正确地进行调用和转换,但当我将其更改为作为外部源的函数调用时,在执行axios调用时,我会得到错误代码400,但无论如何,我会得到状态为200的正确响应。 这是我作为测试执行的代码: console.log('Test1'); getCSVUsers(usersurl, user, pass, CSVdelimiter) .then((usersjson) => {

我试图在我的代码中进行axios调用,以获取csv文件并将其转换为JSON。 当代码独立运行时,我能够正确地进行调用和转换,但当我将其更改为作为外部源的函数调用时,在执行axios调用时,我会得到错误代码400,但无论如何,我会得到状态为200的正确响应。 这是我作为测试执行的代码:

console.log('Test1');
getCSVUsers(usersurl, user, pass, CSVdelimiter)
    .then((usersjson) => {
        console.log(usersjson.users[0]);
    })
以及函数的定义:

//Dependencies
import axios from 'axios';
import csv from 'csvtojson';

const getCSVUsers = (url,user,pass,delimiter) => {
  console.log('Test3')
  return new Promise((resolve, reject) => {
    console.log('Test4');
    let users = {}; //Creating JSON structure
    users.users = []; //Creating required array in users JSON.

    const options = { //Creating GET call credentials requirements
        method: 'post',
        headers: {
          'Authorization': 'Basic '+Buffer.from(`${user}:${pass}`).toString('base64')
        }
      }
      console.log('Test5');
        //Make API get call
        axios.get(url, options) //Making the call
        .then(response => { //Getting the response
          console.log('response.status'); 
          csv({ 
            delimiter: delimiter, //Defining the CSV delimiter
            trim:true
          })
            .fromString(response.data) //Processing CSV from response
            .then(function(jsonArrayObj){ //putting result in object
              users.users = jsonArrayObj; //putting object in json array
              resolve(users);
            })
        }).catch((err) => {
          console.log('TestErr');
          console.error(err);
        });
  });
}

export {getCSVUsers}
控制台返回以下内容:

Test1
Test3
Test4
Test5
Response Error:Error: Request failed with status code 400
200
{User1 stats are returned correctly}

我尝试使函数异步并添加“wait”,但这也没有解决问题。

可能是因为您正在执行axios.get并在选项中发送“post”吗?我不这么认为。我尝试将其更改为POST call,但随后它产生了其他错误。另外,我在不同的代码中使用了完全相同的函数(减去CSV转换部分),并且它工作正常。@为了安全起见,我刚刚检查了sava128。如果我将标题更改为“Get”,我仍然会遇到相同的问题,如果我将axios调用更改为POST,则会收到完全不同的错误消息。但正如我所说的,代码在其他地方也能正常工作。你有权访问服务器吗?你能从那里调试请求吗?此外,如果您不是真正执行POST请求,请尝试删除方法选项here@sava128我尝试删除该方法,但遇到了相同的问题。我以前从未做过服务器调试。我通过visualstudio代码在自己的机器上运行它,所以我假设我可以访问服务器,但我不知道如何调试它。