第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何在 Go 中通過隧道路由 http Get?

如何在 Go 中通過隧道路由 http Get?

Go
猛跑小豬 2021-11-22 15:43:19
我有一個(gè)到我的服務(wù)器的 ssh 隧道(通過端口:9998)。我希望我的 http GET/POST 請求通過 Go 中的這個(gè)端口進(jìn)行路由。在 java 中,我會(huì)指定 DsocksProxyHost 和 DsocksProxyPort。我正在 Go 中尋找類似的選項(xiàng)。提前感謝您的幫助。
查看完整描述

1 回答

?
犯罪嫌疑人X

TA貢獻(xiàn)2080條經(jīng)驗(yàn) 獲得超4個(gè)贊

使用上述評論中提供的信息,這里是一個(gè)關(guān)于如何通過 SOCKS 代理隧道傳輸 HTTP 請求的工作示例:


package main


import (

    "fmt"

    "io/ioutil"

    "net"

    "net/http"

    "time"


    "golang.org/x/net/proxy"

)


func main() {

    url := "https://example.com"

    socksAddress := "localhost:9998"


    socks, err := proxy.SOCKS5("tcp", socksAddress, nil, &net.Dialer{

        Timeout:   30 * time.Second,

        KeepAlive: 30 * time.Second,

    })

    if err != nil {

        panic(err)

    }


    client := &http.Client{

        Transport: &http.Transport{

            Dial:                socks.Dial,

            TLSHandshakeTimeout: 10 * time.Second,

        },

    }


    res, err := client.Get(url)

    if err != nil {

        panic(err)

    }

    content, err := ioutil.ReadAll(res.Body)

    res.Body.Close()

    if err != nil {

        panic(err)

    }

    fmt.Printf("%s", string(content))

}


查看完整回答
反對 回復(fù) 2021-11-22
  • 1 回答
  • 0 關(guān)注
  • 135 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)