java - 如何在 Java 中为 SNSEvent 和 S3Event 使用多个 LambdaFunctionHandler?

标签 java amazon-web-services aws-lambda

我想从 s3 事件和 sns 事件触发 Lambda 函数。

当前版本是这样的:

public class LambdaFunctionHandler implements RequestHandler<S3Event, Object> {

  public Object handleRequest(S3Event input, Context context) {
    context.getLogger().log("S3Event: " + input);
    return null;
  }
}

有什么方法可以处理这两种事件类型吗?

最佳答案

根据 official documentation 上的建议有低级处理程序。

public class Hello implements RequestStreamHandler{
    public static void handler(InputStream inputStream, OutputStream outputStream, Context context) throws IOException {
        int letter;
        while((letter = inputStream.read()) != -1)
        {
            outputStream.write(Character.toUpperCase(letter));
        }
    }
}

通过使用这些处理程序,我可以将请求转换为 S3Event 和 SNSEvent。有一个示例代码 here .

关于java - 如何在 Java 中为 SNSEvent 和 S3Event 使用多个 LambdaFunctionHandler?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49052390/

相关文章:

java - 某些代码有问题...?

java - 我的工作目录、文件和 url

java - 从非 UI 线程访问 UI 线程

amazon-web-services - 如何为 AWS Lambda 设置重试超时

java - java中的 map 问题

angularjs - 通过 AWS CloudFormation 配置资源以部署 React(MERN)/Angular(MEAN) 应用程序

amazon-web-services - 如何防止通过Auto Scaling终止EC2实例?

json - 使用 AWS CloudFormation 启动具有最新 Apache 和 PHP 的 AutoScaling 服务器?

javascript - 尝试在 lambda 上执行 ffmpeg 构建时出现 "Invalid or unexpected token"错误

javascript - 如何编写运行 Protractor/Selenium 浏览器自动化脚本的 AWS Lambda 脚本?