aws创建html网页,AWS: 在AWS上创建一个网站,综合运用(Lambda + Api Gateway + Dynamodb + S3)...

简介

本文将创建一个微型网站,以达到综合运用AWS服务的目的:

1.Dynamodb:一种完全托管的NoSQL数据库服务

2.Lambda:实现具体的业务逻辑,基于python3编写,它会调用dynamodb数据库。

3.API Gateway:一种完全托管的服务,可以帮助开发者轻松创建、发布、维护、监控和保护任意规模的API。

4.S3:Host一个较为简单的静态网站,并调用开放出来的REST API

235384b50157662235f21cd1852247b5.png

1.创建Dynamodb

新建一张表(employee),以name为Primary key(partial key),再新增两行数据,如下图所示:

364f0e7e5495042d7288ec3a8b029d7d.png

2.编写Lambda逻辑

2.1创建一个Lambda名为conglambda

04533cd36adcea6bf06dddde486a156b.png

2.2 lambda_function.py

lambda_function.lambda_handler作为入口函数,它会调用dynamodb.

bd432b7638424189e3c07da88ffd5331.png

2.3 DynamoDBService.py

此模块会使用boto3调用dynamodb,其中AWS_ACCESS_ID和AWS_ACCESS_KEY可以在IAM--->Users-->Security credentials-->Create access key创建。

edaf06617f8ccc82947280a2296e8d30.png

2.4 employee.py

相当于一个model类或是一个Dto类。

a60f67db8cf29fd5db9808d07d8aa8c6.png

3.创建一个API Gateway

命令为congAPI,在resources中创建一个新的Method,选择Get,选择刚创建的lambda

2dfd6af401a49ead83cd3e287816f6bf.png

接下来,我们需要给API Gateway传递参数,点击Integration Request-->Mapping Templates中,输入如下内容,以便可以传入name参数给api gateway。

9b1fa8ab36fcfb3704e3c49f526d4895.png

编辑好后,需要部署API Gateway,点击Deploy API

b7031c5c459cfc66d089c91c2556c2bf.png

输入Dev,点击发布,会生成如下链接

86f05418d32bedd0ef317d85570559f9.png

我们在浏览器上输入相应的name参数,就可以成功访问到相应的数据了,此数据来源于dynamodb.

5a8f76ab6a3256484503e6bfeeff0d3c.png

4.使用S3服务host一个较为简单的静态网站

4.1准备index.html

它会使用jquery调用刚才创建的api gateway,具体内容如下:

b3de02676c769bc87b22c16ec33b497e.png

4.2创建一个S3 bucket名为cong-bucket

上传此index.html

2aaaf375a308e2893f58a47251ca58dc.png

4.3将Permissions设置为public,以便公网可以访问到index.html

首先将Bock public access下面的4行全部改成off

5d7dd9301a180962cbbdbc2b75dd4961.png

将Bucket改成public有多种方式,这里使用Bucket Policy。即所有人都可以访问,如下图:

8dcc0f4fcb46b6cab54b2c5d685516e5.png

4.4启用bucket hosting,将host一个较为简单的静态网站

9ac8d140330ad3559e185fdccc25d285.png

4d406ed9402b3d305159f6a8206abfad.png

4.5验证与测试

访问此网站,输入name,点击search,可以看到根据输入的不同,从数据库中抓取相应的内容并显示在网页上

4cde9cc6e2d82bc245310c66e62a8c3d.png

273903b5496e234a76d8a433964c17d3.png

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值