Skip to content
返回云服务

AWS Amplify 全栈

React/Next/Vue 全栈框架,认证、数据、存储、托管 — CLI + 库。

AWS进阶

为什么

Amplify 将前端连 AWS — Cognito 认证、AppSync GraphQL、S3 存储、CloudFront 托管 — 一个 CLI。快速全栈应用无需深 AWS 知识。

AWS is used by 48% of developers and holds 30% cloud market share (Synergy Research Q4 2024)。AWS 提供 200+ 服务,年运行率 1150 亿美元,免费套餐覆盖前 12 个月每月 750 小时 EC2 + Lambda。

何时使用

带认证 + 数据 + 存储的快速全栈 Web/移动应用时用。避免复杂自定义基础设施(用 CDK)或非 AWS 后端。

如何做

1. 初始化 — amplify init,配置项目 + 环境 2. 认证 — amplify add auth,Cognito 用户池、社交登录 3. API — amplify add api,GraphQL(AppSync)或 REST(API Gateway) 4. 存储 — amplify add storage,S3 上传 5. 托管 — amplify add hosting,CloudFront + S3,推送时 CI/CD 6. 推送 — amplify push,部署后端 7. 拉取 — amplify pull,同步后端到本地 8. 库 — amplify-js v6 模块化,auth/data/storage 客户端

示例

# 添加认证 + GraphQL API amplify add auth # 选默认配置 amplify add api # 选 GraphQL,编辑 schema.graphql amplify push // schema.graphql type Todo @model @auth(rules: [{ allow: owner }]) { id: ID! title: String! done: Boolean } // React — 用生成的钩子 import { withAuthenticator } from "@aws-amplify/ui-react"; import { generateClient } from "aws-amplify/api"; const client = generateClient(); const { data } = await client.models.Todo.list(); const todo = await client.models.Todo.create({ title: "学 Amplify" });

常见问题

  • ⚠amplify push 覆盖 — 用 amplify env 分离环境
  • ⚠生成代码过期 — schema 变更后重跑 amplify codegen
  • ⚠Cognito 限制 — 每账户 50 用户池,需要时申请增加

最佳实践

  • ✓用 amplify env 分阶段 — dev/staging/prod 后端、隔离数据
  • ✓GraphQL 优先于 REST — 类型安全、实时订阅、更少代码
  • ✓用 @auth 指令 — Cognito 组、基于所有者、公开读模式

常见问题解答

什么是AWS Amplify 全栈?它解决什么问题?

React/Next/Vue 全栈框架,认证、数据、存储、托管 — CLI + 库。 它可帮助开发者在不自建基础设施的前提下完成部署、存储与扩展,是云服务选型的核心参考。

如何在 5 分钟内上手AWS Amplify 全栈?

两步即可跑通:① 初始化 — amplify init,配置项目 + 环境;② 认证 — amplify add auth,Cognito 用户池、社交登录。建议先用免费套餐验证流程,再接入生产环境。

AWS Amplify 全栈 最容易踩的坑是什么?

最高频的问题是:amplify push 覆盖 — 用 amplify env 分离环境。建议在上线前用 checklist 逐项核对,并在 CI 中加入策略与配置扫描。

AWS Amplify 全栈 的最佳实践有哪些?

AWS Amplify 全栈 的最佳实践包括:用 amplify env 分阶段 — dev/staging/prod 后端、隔离数据;GraphQL 优先于 REST — 类型安全、实时订阅、更少代码;用 @auth 指令 — Cognito 组、基于所有者、公开读模式。其中首条「用 amplify env 分阶段 — dev/staging/prod 后端、隔离数据」应作为团队默认规范写入 IaC 模板。

AWS Amplify 全栈 如何控制成本与避免账单意外?

三招防超支:① 为所有资源打 env/team 标签并启用账单告警;② 用预算阈值触发 Slack/邮件通知;③ 定期用 Cost Explorer 审查闲置资源并清理。AWS Amplify 全栈 多数提供免费套餐,先在免费额度内验证再放量。