GraphQL変換とStorage
GraphQL Transform、Amplify CLI、およびAmplifyライブラリにより、アプリケーションにAmazon S3を使用した複雑なオブジェクトサポートを簡単に追加できます。
基本
S3オブジェクトサポートを追加するための最小限のステップは次のとおりです:
amplify add storageを使用してファイルを保持するAmazon S3バケットを作成します。
amplify add authを使用してAmazon Cognito User Poolsにユーザープールを作成します。
amplify add apiを使用してGraphQL APIを作成し、次の型定義を追加します:
type S3Object { bucket: String! region: String! key: String!}S3Objectタイプを何らかの@modelタイプから参照します:
type Picture @model @auth(rules: [{ allow: owner }]) { id: ID! name: String owner: String
# S3Objectタイプをフィールドから参照します。 file: S3Object}GraphQL Transformは関連する入力タイプの作成を処理し、Amazon DynamoDBのS3オブジェクトへのポインタを保存します。AppSync SDKおよびAmplifyライブラリは、ファイルのS3への透過的なアップロードを処理します。
クライアントアプリからS3オブジェクトを使用してミューテーションを実行します:
mutation ($input: CreatePictureInput!) { createPicture(input: $input) { id name visibility owner createdAt file { region bucket key } }}