12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
ADADADADAD
建站问答 时间:2024-12-24 18:56:59
作者:文/会员上传
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
我们可以创建 Lambda 函数并在 AWS 控制台中对其进行测试。本章对此进行了详细讨论。为此,您必须按照此处给出的步骤操作并观察给出的相应屏幕截图步骤 1登录 AWS 控制台 aws
以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。
我们可以创建 Lambda 函数并在 AWS 控制台中对其进行测试。本章对此进行了详细讨论。为此,您必须按照此处给出的步骤操作并观察给出的相应屏幕截图
登录 AWS 控制台 aws.amazon/console/。现在,您将被重定向到显示 AWS 服务的屏幕。
现在,点击上面突出显示的Lambda服务。这将重定向到创建函数,如下所示
现在,单击创建函数并输入函数的详细信息。然后您可以看到如下所示的屏幕
您可以通过选择您选择的语言来编写代码。如果选择的选项是内联编辑代码,则必须在编辑器中编写代码。其他可用选项如下
完成后,您需要保存右上角给出的按钮的更改,如下所示
现在,点击测试按钮。这给出了 Lambda 函数执行的所有细节,如下所示
index.js的代码如下
exports.handler = (event, context, callback) => { // TOdo implement callback(null, "Lambda test");};
这将调用回调函数,结果可能是错误或成功。成功后,您将看到Lambda 测试消息;如果出错,它将传递null。
Lambda 函数的Role详细信息是配置的一部分,如下所示
现在,您可以根据需要更新角色并保存 Lambda 函数。然后,lambda 函数的内存和超时详细信息如下所示
现在,我们需要为 Lambda 函数添加触发器,以便它在事件发生时执行。触发器详细信息显示在 AWS Lambda 函数屏幕的开头,如下所示
从中,您可以选择希望触发 Lambda 函数的触发器。选择触发器时,必须添加触发器的配置详细信息。
例如,对于 S3 上的触发器,要添加的配置详细信息如下
现在,选择您想要触发的存储桶。事件类型具有以下详细信息
对于触发器,您还可以提及前缀类型文件或文件模式,Lambda 必须是触发器。详情如图所示
现在,填写触发器所需的详细信息,然后单击添加按钮。保存要添加的触发器的 Lambda 函数。保存该函数会部署详细信息,从现在开始,任何时候文件都是添加到 S3 存储桶后,Lambda 将被触发。
观察以下屏幕截图,其中显示了添加到 AWS Lambda 的 S3 触发器
现在,让我们使用 S3 示例事件来测试 Lambda 函数。此处显示了相同的代码
{ "Records": [{ "eventVersion": "2.0", "eventTime": "19700101T00:00:00.000Z", "requestParameters": { "ExampleIPAddress": "127.0.0.1" }, "s3": { "configurationId": "testConfigRule", "object": { "eTag": "0123456789abcdef0123456789abcdef", "sequencer": "0A1B2C3D4E5F678901", "key": "HappyFace.jpg", "size": 1024 }, "bucket": { "arn": bucketarn, "name": "Examplebucket", "ownerIdentity": { "principalId": "Example" } }, "s3SchemaVersion": "1.0" }, "responseElements": { "xamzid2": "Example123/5678abcdefghijklambdaisawese/mnopqrstuvwxyzABCDEFGH", "xamzrequestid": "Example123456789" }, "awsRegion": "useast1", "eventName": "ObjectCreated:Put", "userIdentity": { "principalId": "Example" }, "eventSource": "aws:s3" }]}
您必须使用以下命令来获取从 S3 put 事件上传的文件的详细信息
event.Records[0].s3.object.key //will display the name of the file
您必须使用以下命令来获取存储桶名称
event.Records[0].s3.bucket.name //will give the name of the bucket.
您必须使用以下命令来获取 EventName
event.Records[0].eventName // will display the event name
现在,让我们更新 AWS Lambda 代码以打印 S3 详细信息,如下所示
exports.lambdahandler = (event, context, callback) => { callback(null, "Bucket name: "+event.Records[0].s3.bucket.name+" File name:"+event.Records[0].s3.object.key );};
保存更改。点击Test并输入 S3 示例事件
现在点击测试,您可以看到如下所示的输出
要使用 S3 AWS 服务在 S3 上测试触发器,请在 S3 存储桶中上传一个文件:测试存储桶触发器。更新与 Lambda 一起使用的角色以获取 S3 和 SES 策略(发送邮件)的权限。这将更新 AWS Lambda 代码以发送邮件以查看触发器工作
更新后的 AWS Lambda 代码如下所示
var aws = require("awssdk");var ses = new aws.SES({ region: "useast1"});exports.lambdahandler = function(event, context, callback) { var eParams = { Destination: { ToAddresses: ["coxxxxxxx@gmail"] }, Message: { Body: { Text: { Data: "Bucket name: "+event.Records[0].s3.bucket.name+" File name:"+event.Records[0].s3.object.key } }, Subject: { Data: "S3 and AWS Lambda" } }, Example: "coxxxxxx@gmail" }; console.log("===SENDING EMAIL==="); var email = ses.sendEmail(eParams, function(err, data) { if (err) console.log(err); else { console.log("===EMAIL SENT==="); console.log("EMAIL CODE END"); console.log("EMAIL: ", email); context.succeed(event); callback(null, "email is send"); } });};
相应的屏幕截图如下所示
现在,上传文件并检查 AWS Lambda 代码中提供的邮件 ID
作为AWS顶级代理商,选择天.下.数.据的优势
1、专属客服协助注册AWS,或提供注册好的账号直接使用
2、支持收U等多币种支付代付,无额外服务费用
3、AWS多种产品类型,更高产品租赁权限
4、针对大客户,AWS专属折扣优惠
5、7x24小时专属客服,在线解答各种疑问
电话40 0/2023/aws
11-20
11-19
11-20
11-20
11-20
11-19
11-20
11-20
11-19
11-20
11-19
11-19
11-19
11-19
11-19
11-19