动态ip代理使用 Go module proxy的方法

动态ip代理-如何使用 Go module proxy

  1.我们需要将GO Proxy 环境变量设置为兼容的Go moudle proxy

  如果没有设置 GOPROXY,将其设置为空或设置为 direct ,然后 go get 将直接到VCS(例如 github.com)拉取代码:

  GOPROXY=""

  GOPROXY=direct

  GOPROXY 也可以设置为 off,这意味着不允许使用网络

  GOPROXY=off

  你可以开始使用公共 GOPROXY 。你也可以选择使用 Go 官方团队的 GOPROXY(由 Google 运营)。更多信息可以在这里找到:https://proxy.golang.org/

  要开始使用它,你只需设置环境变量:

  GOPROXY=https://proxy.golang.org

  ip代理-如何使用 Go module proxy

  其他可用的公共代理:

  GOPROXY=https://goproxy.io

  GOPROXY=https://goproxy.cn # proxy.golang.org

  你可以运行多个开源实现并自己托管。可用的有:

  你既可以自己维护,也可以通过公共互联网或内部网络获取相关服务,看你自己的决定。

  你可以传入 file:/// 路由。因为 Go module proxy 是响应 GET 请求(没有查询参数)的 Web 服务器,所以任何文件系统中的文件夹都可以用作 Go module proxy。

  2.Go module proxy 的好处

  默认情况下, go 命令会直接从版本管理系统下载代码。GOPROXY 环境变量允许在下载源的进一步控制。配置该环境变量后,go 命令可以使用 Go module proxy。

  设置环境变量 GOPROXY 开启 Go module proxy 后,将解决上边提到的所有问题。

  Go module proxy 默认永久缓存所有依赖(不可变存储)。这意味着,不必再使用 vendor 文件夹。

  抛弃 vendor 文件夹,它将不会再消耗代码库的空间。

  因为依赖项存储在 不可变存储 中,即使依赖项从网上消失,你的代码也会受到保护。

  一旦 Go module(依赖) 存储在 Go proxy 中,就无法覆盖或删除它。这可以保护你免受可能使用相同版本注入恶意代码的攻击。

  代理ip-如何使用 Go module proxy

  你不再需要任何 VSC 工具来下载依赖项,因为依赖项是通过 HTTP 获取的( Go proxy在后台使用 HTTP)。

  下载和构建 Go module 的速度要快得多,因为 Go proxy 通过 HTTP 独立提供源代码(.zip 存档)go.mod。与从 VCS 获取相比,由于更少的开销,这使得下载花费更少的时间。相比之前它必须获取整个存储库,解决依赖关系也更快,因为 go.mod 可以独立获取。Go 官方团队对它进行了测试,他们看到快速网络上的速度提高了 3 倍,而慢速网络则提高了 6 倍!

  你可以轻松运行自己的 Go proxy ,这可以让你更好地控制构建管道的稳定性,并防止 VCS 关闭时的罕见情况。

  3.这是关于 go mod 相关命令

  ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200725153755118.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZmaGgxMjMzMjE=,size_16,color_FFFFFF,t_70)