S3 CreateEventSourceMapping 触发 "Operation not found" 错误

S3 CreateEventSourceMapping triggers "Operation not found" error

我正在尝试创建源映射,这样当有人在存储桶中上传内容时,Lambda 将触发先前创建的函数,如 here

所述

但是,当我这样称呼时:

$fnName = 'my_function';
$s3->createEventSourceMapping([
    //'BatchSize' => <integer>,
    'Enabled' => true, //<boolean>
    'EventSourceArn' => 'arn:aws:s3:::'.S3_BUCKET.'/'.$fnName, // REQUIRED
    'FunctionName' => $fnName, // REQUIRED
    'StartingPosition' => 'LATEST', //'TRIM_HORIZON|LATEST|AT_TIMESTAMP',
    //'StartingPositionTimestamp' => <integer || string || DateTime>,
]);

我收到以下错误消息 Operation not found: CreateEventSourceMapping

其中一些参数未激活,因为根据 https://docs.aws.amazon.com/aws-sdk-php/v3/api/api-lambda-2015-03-31.html#createeventsourcemapping 中的文档,它们具有默认值或不需要(据我所知)

目前我正在使用 PHP SDK(版本 3.94.2)。有什么我想念的吗?

createEventSourceMapping() method is a method on a Lambda client,不在 S3 客户端上。