You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让amplify pull后aws-exports.js自动使用AppSync自定义域名?

解决Amplify Pull后AppSync自定义域名不自动同步到aws-exports.js的问题

当你通过AWS Web控制台给AppSync API配置了自定义域名,但执行amplify pull后aws-exports.js里的aws_appsync_graphqlEndpoint依然指向原生端点时,可以通过以下几种方式实现自动同步,无需手动修改文件:

方法1:修改后端参数配置文件

  1. 打开本地Amplify项目的amplify/backend/api/<你的API名称>/parameters.json文件
  2. 在JSON对象中添加或修改GraphQLEndpoint字段,值设为你的自定义域名完整地址(比如https://api.yourdomain.com/graphql)
  3. 保存文件后执行amplify push,将配置同步到云端
  4. 之后再执行amplify pull,aws-exports.js中的aws_appsync_graphqlEndpoint就会自动指向你的自定义域名

方法2:使用Amplify CLI的Override功能

如果参数文件中没有GraphQLEndpoint字段,或者需要更灵活的配置控制,可以通过自定义override脚本实现:

  1. 在amplify/backend/api/<你的API名称>目录下创建override.ts(或override.js)文件
  2. 写入以下代码(以TypeScript为例):
import { AmplifyApiGraphQlResourceStackTemplate } from '@aws-amplify/cli-extensibility-helper';

export function override(resources: AmplifyApiGraphQlResourceStackTemplate) {
  // 替换为你的自定义域名地址
  const customGraphQLEndpoint = "https://api.yourdomain.com/graphql";
  
  // 修改API输出的端点值
  resources.GraphQLAPI.outputs.GraphQLEndpoint = customGraphQLEndpoint;
}
  1. 执行amplify push应用这个override配置
  2. 后续的amplify pull操作会自动将自定义域名写入aws-exports.js

方法3:确认环境一致性

  • 执行amplify env list查看本地Amplify项目当前使用的环境,确保其与你在Web控制台配置自定义域名的环境完全一致
  • 如果环境不匹配,使用amplify env checkout <目标环境名>切换后再执行amplify pull

注意事项

  • 自定义域名必须已完成AWS Certificate Manager证书配置、DNS解析(如Route 53或其他服务商),确保可以正常访问
  • 修改后端配置后,amplify push会更新云端的Amplify后端元数据,后续所有拉取该环境的操作都会自动使用自定义域名

内容的提问来源于stack exchange,提问作者Martin Slater

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 05:25:03