溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

怎么在Golang中使用get命令實現(xiàn)socket代理

發(fā)布時間:2021-03-26 15:46:29 來源:億速云 閱讀:156 作者:Leah 欄目:編程語言

這篇文章給大家介紹怎么在Golang中使用get命令實現(xiàn)socket代理,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

比如:

git clone https://github.com/golang/net.git $GOPATH/src/github.com/golang/net
git clone https://github.com/golang/sys.git $GOPATH/src/github.com/golang/sys
git clone https://github.com/golang/tools.git $GOPATH/src/github.com/golang/tools
ln -s $GOPATH/src/github.com/golang $GOPATH/src/golang.org/
cd $GOPATH/src/golang.org/ && mv golang x

另外就是使用代理,網(wǎng)上大多是使用http代理,這里記錄下如何使用socket代理。 go get 命令其實也是利用了 git 命令進(jìn)行下載,不過下載后會自動編譯安裝,所以首先設(shè)置git的代理:

git config --global http.proxy socks5://127.0.0.1:7070

然后

http_proxy=socks5://127.0.0.1:7070 go get xxxx

就可以了。

恢復(fù)的話可以重置git配置:

git config --global --unset http.proxy

go get命令使用socket代理

由于某些不可描述的原因,國內(nèi)使用 go get 命令安裝某些包的時候會超時導(dǎo)致失敗,比如 net 包、 sys 包、 tools 包等。第一種解決辦法就是自己從git上下載后添加鏈接到 GOPATH 中,比如:

git clone https://github.com/golang/net.git $GOPATH/src/github.com/golang/net
git clone https://github.com/golang/sys.git $GOPATH/src/github.com/golang/sys
git clone https://github.com/golang/tools.git $GOPATH/src/github.com/golang/tools
ln -s $GOPATH/src/github.com/golang $GOPATH/src/golang.org/
cd $GOPATH/src/golang.org/ && mv golang x

另外就是使用代理,網(wǎng)上大多是使用http代理,這里記錄下如何使用socket代理。 go get 命令其實也是利用了 git 命令進(jìn)行下載,不過下載后會自動編譯安裝,所以首先設(shè)置git的代理:

git config --global http.proxy socks5://127.0.0.1:7070

然后

http_proxy=socks5://127.0.0.1:7070 go get xxxx

就可以了。

恢復(fù)的話可以重置git配置:

git config --global --unset http.proxy

下面看下go get 使用代理的方法

眾所周知的原因,go get命令在提取一些工程或依賴時(如golang.org域名)被墻掉。通過使用vpn或代理的方法可以解決。

買VPN

這個就不多說了,買vpn,相當(dāng)于直接連接。

使用代理

通過shell環(huán)境變量

export http_proxy=http://ip:port
go get golang.org/xxx

通過設(shè)置git代理

這也是go官方指導(dǎo)。

git config –global http.proxy 'http://127.0.0.1:8087'
go get golang.org/xxx

若使用goagent代理,請使用設(shè)置git代理的方式,且額外執(zhí)行以下腳本再go get:

git config --global http.sslCAinfo 'pathto/XX-Net-3.6.15/data/gae_proxy/CA.crt'

關(guān)于怎么在Golang中使用get命令實現(xiàn)socket代理就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI