首页 > 解决方案 > 我想知道如何通过修改此 lambda 代码将数据导入应用程序

问题描述

 import boto3 

 import json
 

 s3 = boto3.client('s3')


 def lambda_handler(event, context):

     bucket = "cloud-translate-output"
     key = "key value"
    
     try:
         data = s3.get_object(Bucket=bucket, Key=key)
         json_data = data["Body"].read()
 
         return{
             "response_code" : 200,
             "data": str(json_data)
         }
     except Exception as e:
         print (e)
         raise e
 

我正在用 xcode 制作 ios 应用程序。我想使用aws按照app-api gateway-lambda-s3的顺序将数据从s3带到app。但是有没有办法在app中使用api使用api的数据,如果我将此数据上传到s3的1号桶,cloudformation会翻译上传的文本文件并自动将其保存到2号桶,我想将存储在2号存储桶中的文本数据文件通过lambda导入应用程序,而不是键值,有没有办法只使用存储桶的名称?

标签: amazon-web-servicesamazon-s3aws-lambdaamazon-cloudformationtranslate

解决方案


如果我将此数据上传到 s3 的 1 号存储桶,cloudformation 将翻译上传的文本文件并自动将其保存到 2 号存储桶

可悲的是,这不是 CloudFormation 的工作方式。它无法自动读取或翻译存储桶中的任何文件,也无法将它们上传到新存储桶。

我会坚持使用 lambda 函数。它更适合此类任务。


推荐阅读