Amazon s3 当数据源为Lambda函数时,使用AppSync将图像上载到AWS S3
当我使用配置为Lambda的AppSync将聊天信息发送到我的Aurora数据库时,我试图将图像上传到我的S3存储桶 我的突变解决方案是:Amazon s3 当数据源为Lambda函数时,使用AppSync将图像上载到AWS S3,amazon-s3,file-upload,aws-lambda,aws-appsync,Amazon S3,File Upload,Aws Lambda,Aws Appsync,当我使用配置为Lambda的AppSync将聊天信息发送到我的Aurora数据库时,我试图将图像上传到我的S3存储桶 我的突变解决方案是: { "version": "2017-02-28", "operation": "Invoke", "payload": { "field": "createMessage", "arguments": $utils.toJson($context.arguments) } } 消息正确保存
{
"version": "2017-02-28",
"operation": "Invoke",
"payload": {
"field": "createMessage",
"arguments": $utils.toJson($context.arguments)
}
}
消息正确保存在数据库中,但S3图像数据文件未保存在我的S3存储桶中。我相信我已经正确地配置了所有内容,除了我不确定的冲突解决程序。当数据源为lambda时,使用AppSync上载文件与其他所有数据源基本相同,并且不依赖于冲突解决程序 只需确保设置了复杂对象的凭据(JS示例使用Amplify library进行授权): 此外,您还需要提供S3复杂对象作为突变的输入类型:
input S3ObjectInput {
bucket: String!
key: String!
region: String!
localUri: String
mimeType: String
}
即使使用lambda数据源,其他一切都可以正常工作。在这里,您可以找到与您的问题相关的更多信息(在该示例中,使用了dynamoDB,但lambda基本相同:那么您是否通过lambda函数将图像上载到S3?不,我正在使用appsync graphql上载我想问的是,您是否有lambda解析器上载到S3。或者您是否使用AWS SDK执行此操作?我正在使用AWS SDK执行此操作。app sync客户端NDL从图形ql架构上载
input S3ObjectInput {
bucket: String!
key: String!
region: String!
localUri: String
mimeType: String
}