我试图以用node.js编写的REST API的形式返回一些AWS Metric数据,但是似乎没有得到返回,并且我无法在线找到解决方案。
因此,我一直在尝试通过查询API来获取EC2实例的私有IP,但是当我返回它时,数据没有被返回。我不确定我在哪里搞砸吗?
const displayPrivateIP = () => {
var params = {
InstanceIds: [
'i-0db84dd3b27231xxx'
]
};
ec2.describeInstances(params, function(err, data){
if(!err){
return(data.Reservations[0].Instances[0].PrivateIpAddress);
}
else{
return(err)
}
});
}
我已将以上代码导出为模块,并使用以下代码在RESTful服务器中进行查询
const express = require('express');
const app = express();
const displayPrivateIP = require('./application');
app.listen(3000, function () {
console.log('Node app is running on port 3000');
});
app.get('/test', function(req, res){
return res.send(displayPrivateIP());
})
但是它没有显示任何响应,而是当我将代码更改为console.log(data..Reservations[0].Instances[0].PrivateIpAddress)
时,当我查询API时似乎在控制台中打印了privateIP。为什么会发生?