当前位置:   article > 正文

golang 代理direct的意义_goproxy direct

goproxy direct

如何使用Go模块代理

要开始使用Go模块代理,我们需要将GOPROXY环境变量设置为兼容的Go module proxy。有多种方法:

1。)如果GOPROXY没有设置,空或设置为directgo get会直接从VCS(例如github.com)的下载依赖:

  1. GOPROXY=""
  2. GOPROXY=direct

也可以将其设置为off,这表示不访问任何的网络。

GOPROXY=off

2.)您可以开始使用公共Go代理。您的选择之一是使用Go小组(*由Google维护*)中的Go代理。可以在这里找到更多信息:https : //proxy.golang.org/

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

GOPROXY=https://proxy.golang.org

其他公共代理有:

  1. GOPROXY=https://goproxy.io
  2. GOPROXY=https://goproxy.cn # proxy.golang.org 被墙了, 可以使用这个代替

3.)也可以运行多个开源实现并自己托管。例如:

这需要自己来维护。但可自己决定这个代理是通过公共互联网还是只能内部网络访问。

4.)可以购买商业产品:

5.)甚至可以传递一个file:///URL。由于Go模块代理是响应GET请求(没有查询参数)的Web服务器,因此任何文件系统中的文件夹也可以用作Go模块代理。

即将进行的Go v1.13更改(已经发布)

Go v1.13版本中的Go proxy会有一些变化,我认为应该强调:

  1. GOPROXY环境变量现在可以设置为逗号分隔的列表。在回退到下一个路径之前,它将尝试第一个代理。

  2. 默认值GOPROXYhttps://proxy.golang.org,directdirect token后的所有内容都会被忽略。这也意味着go get现在将默认使用GOPROXY。如果根本不想使用Go代理,则需要将其设置为off

  3. 引入了一个新的环境变量GOPRIVATE,是一个逗号分隔的支持glob匹配规则的列表。这可用于绕过GOPROXY某些路径的代理,尤其是公司中的私有库(例如:)GOPRIVATE=*.internal.company.com

(白话翻译:GOPROXY设置例如GOPROXY=https://goproxy.cn,direct,意思是,首先尝试从https://goproxy.cn进行下载,如果没有,启用direct,即从仓库的的源地址下载,比如 githu.com/spf13/viper 这个路径,会使用https://githu.com/spf13/viper 这个路径进行下载。GOPRIVATE变量相当于同时设置了GONOPROXYGONOSUMDB,即对某个指定的私有仓库,直接从私有仓库拉取而不走github,而且不对模块进行校验)

所有这些更改表明Go模块代理是Go模块的核心和重要部分。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/340722
推荐阅读
相关标签
  

闽ICP备14008679号