执行yarn graphql-codegen遇ECONNREFUSED错误,求解决方法
修复
yarn graphql-codegen 报错 connect ECONNREFUSED 127.0.0.1:4000 错误核心原因
报错明确提示无法连接到localhost:4000,说明你的GraphQL后端服务没有在4000端口运行,或者端点配置有误——你已正确安装所需的codegen依赖,问题和依赖安装无关。
具体修复步骤
确认GraphQL服务状态
检查本地4000端口是否有服务监听:- macOS/Linux:执行
lsof -i :4000,无输出则服务未启动 - Windows:执行
netstat -ano | findstr :4000,无结果则服务未运行
启动你的GraphQL后端服务,确保它绑定到4000端口。
- macOS/Linux:执行
验证端点可用性
打开浏览器或API工具,访问http://localhost:4000/graphql(多数GraphQL服务默认带/graphql路径),确认能正常加载GraphiQL界面或返回合法响应。若访问失败,检查后端服务的启动配置。检查codegen配置文件
找到项目中的codegen.yml/codegen.ts配置文件,确认schema字段的URL是否正确:- 常见错误:遗漏
/graphql后缀,比如写成http://localhost:4000而非http://localhost:4000/graphql - 示例正确配置(codegen.yml):
schema: "http://localhost:4000/graphql" documents: "./src/**/*.graphql" generates: src/gql/: plugins: - typescript - typescript-operations
- 常见错误:遗漏
备选方案:使用本地schema文件
如果后端暂时无法启动,可先导出schema到本地文件:- 先启动后端服务,执行
npx get-graphql-schema http://localhost:4000/graphql > schema.graphql - 修改codegen配置,指向本地文件:
schema: "./schema.graphql"
之后运行
yarn graphql-codegen即可基于本地schema生成代码。- 先启动后端服务,执行
内容的提问来源于stack exchange,提问作者lionflick
相关产品推荐
相关产品推荐

