我是一个节点的初学者,我尝试使用一个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'
}
任何帮助,甚至帮助我了解问题可能在哪里,将高度赞赏。
3条答案
按热度按时间mitkmikd1#
在v1.2.1中修复了此错误。
安装axios(v1.2.1)后再试一次
rqqzpn5f2#
降级到Axios版本1.1.3对我有效
jum4pzuy3#
如果您使用的是旧版本的axios v1.2.1,则应修复此问题