这个错误表明 Go 在尝试从默认的代理服务器 proxy.golang.org 下载依赖时连接失败(通常是网络问题,比如被墙或超时)。以下是解决方案:
1. 立即解决方案:启用国内镜像
(1)临时设置 GOPROXY(当前终端生效)
$env:GOPROXY = "https://goproxy.cn,direct"
然后重新运行你的
go get或go mod命令。
(2)永久生效配置
go env -w GOPROXY=https://goproxy.cn,direct
此命令会修改Go的全局配置,之后所有操作都会使用国内镜像。
2. 备选国内镜像源
如果主镜像不稳定,可切换为其他源:
# 阿里云镜像
go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/,direct
# 七牛云镜像(默认推荐)
go env -w GOPROXY=https://goproxy.cn,direct
3. 验证是否生效
go env | findstr GOPROXY # Windows查看当前代理
go get github.com/bytedance/sonic@v1.11.6 # 重试下载
4. 高级排查
(1)关闭GOSUMDB校验(仅限紧急情况)
go env -w GOSUMDB=off
⚠️ 安全性降低,建议仅在无法连接时临时使用。
(2)检查网络连通性
ping goproxy.cn # 测试是否能解析域名
curl -v https://goproxy.cn # 测试HTTPS连接(需安装curl)
(3)手动下载依赖(终极方案)
如果仍失败,可以:
- 浏览器访问 https://github.com/bytedance/sonic
- 手动下载代码到
$GOPATH/src/github.com/bytedance/sonic - 执行
go mod tidy
5. Windows防火墙/代理冲突
- 关闭VPN:某些全局代理会干扰Go模块下载。
- 以管理员身份运行终端:避免权限不足导致写入失败。
完成上述步骤后,你的Go应该能正常拉取依赖了!如果仍有问题,请提供完整的错误日志和 go env输出。
内容由零声教学AI助手提供,问题来源于学员提问




