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

Node.js GraphQL中Unexpected token语法错误的解决求助

修复Apollo Server启动时的SyntaxError: Unexpected token {错误

这个错误的核心原因是Node.js未能正确识别ES模块的import语法,以下是具体修复方案:

1. 检查并升级Node.js版本

Apollo Server 4要求Node.js版本至少为16.14.0,低于该版本的Node.js对ES模块的支持不完善。执行以下命令查看当前版本:

node -v

如果版本不符合要求,升级到Node.js的最新LTS版本即可。

2. 确认package.json配置有效性

确保"type": "module"字段位于package.json的顶层(你的配置已符合要求),检查是否存在拼写错误(如误写为"type": "modules"),并确认文件已保存。

3. 检查文件后缀与模块一致性

所有使用import语法的文件需保持.js后缀,同时确保项目中其他被导入的文件也遵循ES模块语法,避免混合使用CommonJS和ES模块语法。

4. 切换为CommonJS语法(备选方案)

如果暂时无法升级Node.js或使用ES模块,可将代码中的ES模块语法替换为CommonJS:

// 替换 import { ApolloServer } from '@apollo/server';
const { ApolloServer } = require('@apollo/server');
// 其他导入语句同理替换

同时删除package.json中的"type": "module"字段,让Node.js默认使用CommonJS模块系统。

修改完成后重新执行npm start,若仍有错误,可查看npm日志获取更详细的报错信息定位问题。

内容的提问来源于stack exchange,提问作者Imran Sandozi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 16:07:49