Amazon web services 增加AWS Lambda响应车身有效载荷尺寸

Amazon web services 增加AWS Lambda响应车身有效载荷尺寸,amazon-web-services,aws-lambda,Amazon Web Services,Aws Lambda,我正在使用AWSAPI网关调用我的AWS lambda函数。它们是RESTWeb服务,将响应返回给调用方。有些响应超过20MB。由于响应数据的性质(数据是表示复杂结构的多段线),我不能在这里使用分页。AWS Lambda收到Lambda响应正文不能超过6MB大小的限制,由于此限制,我的一些超过6MB的响应因“正文大小太长”消息而失败。我想知道是否有办法提高lambda响应的6MB限制 谢谢你的评论,我已经按照评论中提到的方式实施了 将响应上载到s3 bucket,并向调用者提供重定向url。下面

我正在使用AWSAPI网关调用我的AWS lambda函数。它们是RESTWeb服务,将响应返回给调用方。有些响应超过20MB。由于响应数据的性质(数据是表示复杂结构的多段线),我不能在这里使用分页。AWS Lambda收到Lambda响应正文不能超过6MB大小的限制,由于此限制,我的一些超过6MB的响应因“正文大小太长”消息而失败。我想知道是否有办法提高lambda响应的6MB限制

谢谢你的评论,我已经按照评论中提到的方式实施了

将响应上载到s3 bucket,并向调用者提供重定向url。下面是有效的示例代码。 您还可以在s3 bucket级别启用CORS,以使其正常工作。您可以切换到正确的区域

public String uploadToS3(Set<MyClass> myclassSet, String bucketName) throws IOException {
    Region region = Regions.getCurrentRegion();
    if (region == null) {
      region = Region.getRegion(Regions.US_EAST_1);
    }
    AmazonS3 s3Client = AmazonS3ClientBuilder.standard()
                                .withRegion(region.getName())
                                .withCredentials(DefaultAWSCredentialsProviderChain.getInstance())
                                .build();
    ObjectMapper mapper = new ObjectMapper();
    String jsonClass = mapper.writeValueAsString(myclassSet);
    s3Client.putObject(bucketName, "random_key.json", jsonClass);
    GeneratePresignedUrlRequest req = new GeneratePresignedUrlRequest(bucketName, "random_key.json");
    URL url = s3Client.generatePresignedUrl(req);
    String redirectUrl = url.toString();
    return redirectUrl;
  }
publicstringuploadtos3(Set myclassSet,stringbucketname)抛出IOException{
Region Region=Regions.getCurrentRegion();
如果(区域==null){
region=region.getRegion(Regions.US\u EAST\u 1);
}
AmazonS3 s3Client=AmazonS3ClientBuilder.standard()
.withRegion(region.getName())
.withCredentials(DefaultAWSCredentialsProviderChain.getInstance())
.build();
ObjectMapper mapper=新的ObjectMapper();
字符串jsonClass=mapper.writeValueAsString(myclassSet);
s3Client.putObject(bucketName,“random_key.json”,jsonClass);
GeneratePressignedUrlRequest请求=新的GeneratePressignedUrlRequest(bucketName,“random_key.json”);
URL URL=s3Client.generatePressigneDurl(请求);
字符串重定向url=url.toString();
返回重定向URL;
}

可能重复:您考虑过这个建议吗?正如@srikanthnutigatu所指出的,没有。重复的问题让你写信给S3。从那里,您可以创建一个签名URL或其他传输到客户端的方法。这适用于你的情况吗?可能重复