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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Golang 中 smtp 客戶端的自定義撥號器?

Golang 中 smtp 客戶端的自定義撥號器?

Go
青春有我 2023-03-21 15:06:14
我正在嘗試通過 socks5 代理連接到 smtp 服務(wù)器package mainimport (    "net"    "net/smtp"    "golang.org/x/net/proxy")func main() { Connect() }func Connect() {    dialer, err := Socks("127.0.0.1:9050", "smtp.gmail.com:465")    if err != nil {        panic(err)    }    client, err := smtp.NewClient(dialer, "smtp.gmail.com:465")    if err != nil {        panic(err)    }    auth := smtp.PlainAuth("", "mymailaddr@gmail.com", "", "smtp.gmail.com:465")    if err = client.Auth(auth); err != nil {        panic(err)    }}func Socks(socks, addr string) (r net.Conn, err error) {    Dial, err := proxy.SOCKS5("tcp", socks, nil, proxy.Direct)    r, err = Dial.Dial("tcp", addr)    return}而且不能,有錯誤panic: EOFgoroutine 1 [running]:main.Connect()        main.go:18 +0x1e5main.main()        main.go:10 +0x20exit status 2有smtp.Client什么方法可以將 smtp 服務(wù)器與 socks 代理連接?我沒有在谷歌中找到答案,也沒有找到任何圖書館提供此功能。
查看完整描述

1 回答

?
心有法竹

TA貢獻1866條經(jīng)驗 獲得超5個贊

您使用的端口 465 從一開始就需要 TLS(隱式 TLS),而不是在 STARTTLS 命令(顯式 TLS)之后使用通常的 TLS。這意味著Conn您使用的對象dialer應(yīng)該已經(jīng)升級到 TLS。去做這個:


import "crypto/tls"

...

func Connect() {

    dialer, err := Socks("127.0.0.1:9050", "smtp.gmail.com:465")

    ...

    conf := &tls.Config{ServerName: "smtp.gmail.com"}

    tlsdialer := tls.Client(dialer, conf)

    client, err := smtp.NewClient(tlsdialer, "smtp.gmail.com:465")

或者,您可以使用需要顯式 TLS 的端口 587:


func Connect() {

    dialer, err := Socks("127.0.0.1:9050", "smtp.gmail.com:587")

    ...

    conf := &tls.Config{ServerName: "smtp.gmail.com"}

    err = client.StartTLS(conf)

    ...

    auth := smtp.PlainAuth("", "mymailaddr@gmail.com", "", "smtp.gmail.com:587")

    if err = client.Auth(auth); err != nil {

    ...


查看完整回答
反對 回復(fù) 2023-03-21
  • 1 回答
  • 0 關(guān)注
  • 145 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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