Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Typescript中从aws s3 bucket获取对象_Typescript_Amazon Web Services_Amazon S3 - Fatal编程技术网

在Typescript中从aws s3 bucket获取对象

在Typescript中从aws s3 bucket获取对象,typescript,amazon-web-services,amazon-s3,Typescript,Amazon Web Services,Amazon S3,我试图从aws s3 bucket中获取对象,但得到了空数据响应。 我的代码如下: import * as AWS from 'aws-sdk'; public async getObjects() { AWS.config.update({ accessKeyId: "MY_KEY_ID", secretAccessKey: "MY_SECRET_KEY", region: "eu-central-

我试图从aws s3 bucket中获取对象,但得到了空数据响应。 我的代码如下:

import * as AWS from 'aws-sdk';
public async getObjects() { 
    AWS.config.update({
      accessKeyId: "MY_KEY_ID",
      secretAccessKey: "MY_SECRET_KEY",
      region: "eu-central-1"
    });

    let s3 = new AWS.S3();
    const response = await s3.listObjects({Bucket: 'my-bucket'});
    console.log(response);
  }
我从调试器得到的响应:

 response:
   Response {
     request: [Circular],
     data: null,
     error: null,
     retryCount: 0,
     redirectCount: 0,
     httpResponse:
      HttpResponse {
        statusCode: undefined,
        headers: {},
        body: undefined,
        streaming: false,
        stream: null },
     maxRetries: 3,
     maxRedirects: 10 }

s3.listObjects
不返回承诺,您应该以另一种方式调用它():


原来我无法访问aws s3的443端口,因此无法访问数据。如果您想从EC2访问s3,可以使用VPC端点使用专用aws网络()进行连接。它将允许您保持限制性防火墙面向公共互联网(如果这是您的问题),我请求我的公司允许连接,它现在工作正常。
import * as AWS from 'aws-sdk';
public getObjects() { 
    AWS.config.update({
      accessKeyId: "MY_KEY_ID",
      secretAccessKey: "MY_SECRET_KEY",
      region: "eu-central-1"
    });

    let s3 = new AWS.S3();
    s3.listObjects({Bucket: 'my-bucket'}, (err, data) => {
        if (err) console.log(err, err.stack);
        else console.log(data);
    });
  }