python-3.x - 向 AWS Lambda 函数发送和读取数据
问题描述
所以我设置了一个 lambda 函数来将一个 txt 文件上传到 S3。如何使用 API Gateway 向函数发送数据?
我已经将 API Gateway 设置为具有 POST 方法。
这是我的 Lambda 函数
import boto3
s3 = boto3.resource('s3')
def lambda_handler(event, context):
data = 'Totally awesome sword design' #event['data']
filename = 'awesomeSword2' #event['filename']
object = s3.Object(BUCKET_NAME, KEY + filename + '.txt')
object.put(Body=data)
我只需要知道如何将数据和文件名发送到函数(并读取它)
解决方案
将使用您通过 POST 请求发送的数据调用 lambda。
例如,假设您使用以下 JSON 向 API 网关发出 POST 请求:
{“数据”:“一些数据”}
lambda 函数将在 event 参数中接收一个正确的 Python 字典:
{'data': '一些数据'}
然后你可以做这样的事情:
def lambda_handler(event, context):
data = event.get('data')
# this will avoid raising an error if event doesn't contain the data key
# do whatever you like with Data
推荐阅读
- c++ - 如何比较 C++ 中的泛型结构?
- java - 为什么我的 RMI/IIOP java 客户端在 Calendar 类上出现 CORBA MARSHAL 异常?
- java - APACHE CAMEL REST DSL API 的行为与相对 CURL 操作不同
- reactjs - 如何使用带有 msal 身份验证的 React 应用程序在 Chrome 中删除有关同一站点的警告
- python - 如何在python中查看或修改多索引数据框中的值
- php - 如何遍历 PHP 中的变量名列表
- java - JSP 中的隐藏输入在 Java Servlet 中返回为 null - 为什么?
- google-apps-script - 提高 Google Sheets 中 App Script 代码的加载效率
- c# - SqlCommand 。ExecuteReader 方法慢
- swift - 动画下拉UIView时TableView单元格不改变高度