首页 > 解决方案 > 在 React 中使用 AWS Amplify Appsync 上传图像

问题描述

我有一个使用 AWS Amplify 和 Appsync 设置的反应项目。

我在 Amplify 中使用 GraphQL 功能与 AppSync 交互。

我正在尝试从反应应用程序将图像上传到 S3。有没有人通过 Amplify GraphQL 做到这一点?能否请你帮忙?

顺便说一句,我已经阅读了有关如何使用 Apollo 和 aws-appsync-react 执行此操作的文档。我试图弄清楚如何使用 Amplify 中内置的 GraphQL 功能。

标签: graphqlaws-appsyncaws-amplify

解决方案


我认为现在无法通过 Amplify.API 上传复杂对象,因为使用 AppSync 上传需要提交complexObjectsCredentials给 AppSync 客户端。

const client = new AWSAppSyncClient({
    url: ENDPOINT,
    region: REGION,
    auth: { .. },
    complexObjectsCredentials: () => Auth.currentCredentials(),
});

在配置放大时,您似乎无法提供这些凭据。

或者,您可以使用“Amplify.Storage”模块在没有 AppSync 的情况下上传文件


推荐阅读