Ama*_*day 7 javascript https aws-lambda
这是AWS Lambda函数中的代码:
var https = require('https');
exports.handler = (event, context, callback) => {
var params = {
host: "bittrex.com",
path: "/api/v1.1/public/getmarketsummaries"
};
var req = https.request(params, function(res) {
var test = res.toString();
console.log(JSON.parse(test));
//console.log(JSON.parse(res.toString()));
});
req.end();
};
Run Code Online (Sandbox Code Playgroud)
错误:getaddrinfo ENOTFOUND https://bittrex.com https://bittrex.com:443 在errnoException(dns.js:28:10)在GetAddrInfoReqWrap.onlookup [作为未完成](dns.js:76:26)
我无法确定,请帮忙。其他解决方案无效。
Joh*_*ley 10
我修改了您的代码以在 AWS Lambda Node.js 6.10 中正常工作。我将 Lambda 超时设置为 60 秒以进行测试。
最大的变化是添加了“res.on('data', function(chunk) {}:”和“res.on('end', function() {}”。
var https = require('https');
exports.handler = (event, context, callback) => {
var params = {
host: "bittrex.com",
path: "/api/v1.1/public/getmarketsummaries"
};
var req = https.request(params, function(res) {
let data = '';
console.log('STATUS: ' + res.statusCode);
res.setEncoding('utf8');
res.on('data', function(chunk) {
data += chunk;
});
res.on('end', function() {
console.log("DONE");
console.log(JSON.parse(data));
});
});
req.end();
};
Run Code Online (Sandbox Code Playgroud)
问题出在您的安全组上。看起来您的 lambda 没有\xe2\x80\x99t 有权解析 DNS。检查 lambda sec 组是否启用了端口 53 UDP 和 TCP。
\n| 归档时间: |
|
| 查看次数: |
7268 次 |
| 最近记录: |