👌

Gen2がGAされた。フロントとバックを繋ぐconfigにカスタム引数を追加 at Gen2

2024/05/07に公開

amplify_outputs.jsonに変わった!

ready for productionになる前は、frontendとbackendを繋ぎ込むconfigファイルについては、
amplifyconfigure.jsonという名前で、生成されていたのですが、productionになったことで、
amplify_outputs.jsonという名前で生成されるようになった。

過去の記事

https://zenn.dev/purpom/articles/d92ef0e1123079

最新のやり方

https://docs.amplify.aws/react/reference/amplify_outputs/

基本的にカスタム引数の追加の仕方は、preview版の時と一緒みたい

amplify/backend.ts
import { defineBackend } from "@aws-amplify/backend";
import { auth } from "./auth/resource";
import { data } from "./data/resource";

const backend = defineBackend({
  auth, 
  data, 
});

backend.addOutput({
  custom: {
    api_id: "restAPIId",
    api_endpoint: "https://api.example.com",
    api_name: "restApiName",
  },
});

生成されたamplify_outputs.jsonに後から付け加えることも可能

src/index.ts
import { Amplify } from "aws-amplify";
import outputs from "@/amplify_outputs.json";

Amplify.configure(outputs);
const currentConfig = Amplify.getConfig(); 
Amplify.configure({
  ...currentConfig,
//あとから付け加え
  API: {
    REST: {
      [outputs.custom.api_name]: {
        endpoint: outputs.custom.api_endpoint,
        region: "us-east-1",
      },
    },
  },
});

schemaについては下記に書いてある。

https://github.com/aws-amplify/amplify-backend/blob/main/packages/client-config/src/client-config-schema/schema_v1.json

PURPM MEDIA LAB Tech blog

Discussion