对 s3.selectObjectContent 使用 AWS SDK (JS) 在 'on' 关键字上出现错误
Using AWS SDK (JS) for s3.selectObjectContent gives error on 'on' keyword
我在 Node.JS.
的 Typescript 文件中使用 AWS SDK Javascript 版本 2.730.0
(撰写本文时的最新版本)
我正在使用 selectObjectContent
操作来查询 CSV 文件,并且按照文档中的 guide 我有这个块:
import * as S3 from 'aws-sdk/clients/s3';
const s3 = new S3();
...
s3.selectObjectContent(params, (err, data) => {
if (!err){
data.Payload.on('data', (event) => {
// Do something with returned records
});
}
});
第 data.Payload.on('data', (event) => {
行在 linter 中给出了这个错误:
Property 'on' does not exist on type 'EventStream<{ Records?: RecordsEvent; Stats?: StatsEvent; Progress?: ProgressEvent; Cont?: ContinuationEvent; End?: EndEvent; }>'.
我需要更改什么才能使 on
正常工作?
我运行自己遇到了同样的问题。在另一个论坛上发现了这个问题post:
https://www.gitmemory.com/issue/aws/aws-sdk-js/3525/725076849
它没有明确显示解决问题的代码,但根据信息,我解决了如下问题:
import { ReadStream } from "fs";
const eventStream = data.Payload as ReadStream;
eventStream.on("data", ({ Records, Stats, Progress, Cont, End }: ...
TypeScript 不再抱怨。
我在 Node.JS.
的 Typescript 文件中使用 AWS SDK Javascript 版本2.730.0
(撰写本文时的最新版本)
我正在使用 selectObjectContent
操作来查询 CSV 文件,并且按照文档中的 guide 我有这个块:
import * as S3 from 'aws-sdk/clients/s3';
const s3 = new S3();
...
s3.selectObjectContent(params, (err, data) => {
if (!err){
data.Payload.on('data', (event) => {
// Do something with returned records
});
}
});
第 data.Payload.on('data', (event) => {
行在 linter 中给出了这个错误:
Property 'on' does not exist on type 'EventStream<{ Records?: RecordsEvent; Stats?: StatsEvent; Progress?: ProgressEvent; Cont?: ContinuationEvent; End?: EndEvent; }>'.
我需要更改什么才能使 on
正常工作?
我运行自己遇到了同样的问题。在另一个论坛上发现了这个问题post:
https://www.gitmemory.com/issue/aws/aws-sdk-js/3525/725076849
它没有明确显示解决问题的代码,但根据信息,我解决了如下问题:
import { ReadStream } from "fs";
const eventStream = data.Payload as ReadStream;
eventStream.on("data", ({ Records, Stats, Progress, Cont, End }: ...
TypeScript 不再抱怨。