Node.js 如何为nodejs aws sdk配置caCert和代理;错误:无法获取本地颁发者证书;
我已经成功地用底部代码块配置了代理和证书文件,但仍然低于证书错误。我被这个问题困扰了很长一段时间,你们能帮我解决这个问题吗Node.js 如何为nodejs aws sdk配置caCert和代理;错误:无法获取本地颁发者证书;,node.js,amazon-web-services,ssl,aws-sdk-js,aws-sdk-nodejs,Node.js,Amazon Web Services,Ssl,Aws Sdk Js,Aws Sdk Nodejs,我已经成功地用底部代码块配置了代理和证书文件,但仍然低于证书错误。我被这个问题困扰了很长一段时间,你们能帮我解决这个问题吗 { Error: unable to get local issuer certificate at TLSSocket.<anonymous> (_tls_wrap.js:1105:38) at emitNone (events.js:106:13) at TLSSocket.emit (events.js:208:7) at
{ Error: unable to get local issuer certificate
at TLSSocket.<anonymous> (_tls_wrap.js:1105:38)
at emitNone (events.js:106:13)
at TLSSocket.emit (events.js:208:7)
at TLSSocket._finishInit (_tls_wrap.js:639:8)
at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:469:38)
message: 'unable to get local issuer certificate',
code: 'NetworkingError',
region: 'eu-west-1',
hostname: 's3.eu-west-1.amazonaws.com',
retryable: true,
time: 2020-09-08T14:51:27.596Z } 'Error: unable to get local issuer certificate\n at TLSSocket.<anonymous> (_tls_wrap.js:1105:38)\n at emitNone (events.js:106:13)\n at TLSSocket.emit (events.js:208:7)\n at TLSSocket._finishInit (_tls_wrap.js:639:8)\n at TLSWrap.ssl.onhandshakedone (_tls_wrap.js:469:38)'
const AWS = require("aws-sdk");
const fs = require("fs");
const path = require("path");
const url = require("url");
const HttpsProxyAgent = require("https-proxy-agent");
const certs = [fs.readFileSync(path.join(__dirname, "tls-cabundle.pem"))];
const proxyOptions = {};
Object.assign(proxyOptions, url.parse("http://USERNAME:PASSWORD@primary-proxy.PROXYURL:8080"));
Object.assign(proxyOptions, {
rejectUnauthorized: true,
ca: certs,
});
const creds = new AWS.Credentials({
accessKeyId: "****************",
secretAccessKey: "***********************",
sessionToken: "**************************************************************",
});
AWS.config.credentials = creds;
AWS.config.update({
region: "eu-west-1",
httpOptions: {
agent: new HttpsProxyAgent(proxyOptions),
},
});
// Create S3 service object
const s3 = new AWS.S3({ apiVersion: "2006-03-01" });
// use aws-sdk S3 service object to list S3 Buckets as per https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/S3.html#listBuckets-property
s3.listBuckets(function (err, data) {
if (err) console.log(err, err.stack);
else console.log(data);
});