You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

是否可在AWS Lambda中访问Amplify Datastore存储S3上传文件相关数据

解答

可行性确认

可以在AWS Lambda中操作Amplify Datastore。Amplify Datastore的底层是对AppSync GraphQL API + 托管DynamoDB的封装,你不需要在Lambda侧启动完整的Datastore离线同步客户端,只要调用对应AppSync的GraphQL接口完成数据增删改查,写入的内容就会自动同步到所有接入Datastore的前端应用,和前端侧调用Datastore API写入的效果完全一致。

实操步骤

  • 给你现有的S3触发Lambda开通AppSync GraphQL API调用权限:如果是用Amplify CLI管理的资源,执行amplify update function选择目标Lambda,在权限配置项中勾选GraphQL API,按需分配增删改查权限即可;如果是手动管理的Lambda,给Lambda执行角色添加AppSync的appsync:GraphQL操作权限即可。
  • Lambda代码中引入轻量GraphQL客户端(比如graphql-request),不要引入完整的Amplify Datastore依赖包,避免不必要的资源消耗。
  • 从Lambda环境变量中获取Amplify自动注入的API_<你的API名称>_GRAPHQLENDPOINT、API_<你的API名称>_APIKEY参数,构造对应你数据模型的GraphQL Mutation语句,执行写入即可。

注意:不建议直接操作Datastore对应的底层DynamoDB表,这种方式需要你手动维护_version、_lastChangedAt、_deleted等Datastore同步依赖的系统字段,一旦字段值不符合规则会导致前端Datastore同步报错,调用AppSync接口的方式会由Amplify自动处理这些系统字段,稳定性更高。


内容的提问来源于stack exchange,提问作者Aanal Shah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 11:06:04