测试结果显示:
- ✅ API Key 存在且正确(39字符)
- ✅ SDK 客户端创建成功
- ❌ 网络连接失败:
TypeError: fetch failed sending request
- Windows 防火墙可能阻止了 Node.js 的网络连接
- 杀毒软件可能阻止了连接
- 如果使用公司网络,可能需要配置代理
- Node.js 可能没有使用系统代理设置
- 某些地区可能无法访问 Google API
- ISP 可能阻止了连接
在 .env.local 中添加:
HTTP_PROXY=http://proxy.example.com:8080
HTTPS_PROXY=http://proxy.example.com:8080
NO_PROXY=localhost,127.0.0.1- 打开 Windows 防火墙设置
- 允许 Node.js 通过防火墙
- 或者临时禁用防火墙测试
Node.js 默认不自动使用系统代理。可以:
- 设置环境变量(在 PowerShell 中):
$env:HTTP_PROXY = "http://proxy:port"
$env:HTTPS_PROXY = "http://proxy:port"- 或在代码中配置(如果需要)
# 测试 DNS 解析
nslookup generativelanguage.googleapis.com
# 测试 HTTPS 连接
Test-NetConnection generativelanguage.googleapis.com -Port 443如果网络限制导致无法访问,可以:
- 使用 VPN 连接
- 切换到其他网络环境
可以尝试在浏览器中直接访问:
https://generativelanguage.googleapis.com/v1beta/models/gemini-2.5-flash:generateContent
如果浏览器也无法访问,说明是网络层面的问题。
✅ SDK 已更新到最新版本 ✅ API 调用方式符合官方文档 ✅ 错误处理已完善 ✅ 重试机制已实现
问题在于网络连接,不是代码问题。