Javascript aws-CloudFront CreateInvalization()方法参数在使用承诺时出错
AWS SDK for JavaScript允许在调用AWS服务类的方法时使用承诺而不是回调。下面是S3的一个示例。(我正在使用TypeScript和无服务器开发框架) 上面的函数工作得非常好,我们将bucket参数作为唯一的参数传递给方法 但是,当我试图通过在AWS CloudFront类上调用createInvalization()方法来执行类似的操作时,它会给出一个错误,指出参数不匹配 下面是我的代码和我得到的错误Javascript aws-CloudFront CreateInvalization()方法参数在使用承诺时出错,javascript,amazon-web-services,typescript,aws-sdk,amazon-cloudfront,Javascript,Amazon Web Services,Typescript,Aws Sdk,Amazon Cloudfront,AWS SDK for JavaScript允许在调用AWS服务类的方法时使用承诺而不是回调。下面是S3的一个示例。(我正在使用TypeScript和无服务器开发框架) 上面的函数工作得非常好,我们将bucket参数作为唯一的参数传递给方法 但是,当我试图通过在AWS CloudFront类上调用createInvalization()方法来执行类似的操作时,它会给出一个错误,指出参数不匹配 下面是我的代码和我得到的错误 const cloudfront = new aws.CloudFront
const cloudfront = new aws.CloudFront();
async function invalidateFiles() {
await this.cloudfront.createInvalidation({
DistributionId: 'xxxxxxxxxxx',
InvalidationBatch: {
Paths: {
Quantity: 1,
Items: [`test.js`],
},
},
}).promise();
}
有人能帮你解决这个问题吗?你无法将调用方引用作为参数传递
const cloudfront = new aws.CloudFront();
async function invalidateFiles() {
await cloudfront.createInvalidation({
DistributionId: 'xxxxxxxxxxx',
InvalidationBatch: {
CallerReference: `SOME-UNIQUE-STRING-${new Date().getTime()}`,
Paths: {
Quantity: 1,
Items: ['test.js'],
},
},
}).promise();
}
const cloudfront = new aws.CloudFront();
async function invalidateFiles() {
await cloudfront.createInvalidation({
DistributionId: 'xxxxxxxxxxx',
InvalidationBatch: {
CallerReference: `SOME-UNIQUE-STRING-${new Date().getTime()}`,
Paths: {
Quantity: 1,
Items: ['test.js'],
},
},
}).promise();
}