NodeJS 使用axios的节点fetchi请求返回无用数据作为响应

wsxa1bj1  于 2022-12-12  发布在  Node.js
关注(0)|答案(3)|浏览(116)

我是一个节点的初学者,我尝试使用一个API,但是响应返回了无用的数据。我已经测试了API路由,我确定问题出在我的请求上,但是我显然不能告诉哪里。我想我犯了一个明显的错误,但是很难告诉。下面是生成令牌的函数

const generateToken = async (req, res, next) => {
  const secret = proces.env.MPESA_CONSUMER_SECRET;
  const consumer = process.env.MPESA_CONSUMER_KEY;

  const auth = new Buffer.from(`${consumer}:${secret}`).toString("base64");
  await axios
    .get(
      "https://sandbox.safaricom.co.ke/oauth/v1/generate?grant_type=client_credentials",
      {
        headers: {
          authorization: `Basic ${auth}`,
        },
      }
    )
    .then((response) => {
      console.log(response);
      // token = response.data.access_token;
      next();
    })
    .catch((err) => {
      console.log(err);
      //res.status(400).json(err.message)
    });
};
app.get("/token", (req, res) => {
  generateToken();
});

执行console.log后,我得到的响应如下

data: '\x1F�\b\x00\x00\x00\x00\x00\x00���R@\x02J��ɩ���%�٩yJV\n' +
    'J��.�EU�\x1E��Y�N)%IQ\x01\x05\x16���&N�f\x01J:�zS+\n' +
    '2�R��3�:�M--��\n' +
    'j�,\x00�H��q\x00\x00\x00'
}

任何帮助,甚至帮助我了解问题可能在哪里,将高度赞赏。

mitkmikd

mitkmikd1#

在v1.2.1中修复了此错误。

安装axios(v1.2.1)后再试一次

rqqzpn5f

rqqzpn5f2#

降级到Axios版本1.1.3对我有效

jum4pzuy

jum4pzuy3#

如果您使用的是旧版本的axios v1.2.1,则应修复此问题

相关问题