mirror of
https://github.com/bit1001/tdl.git
synced 2024-09-20 14:45:55 +08:00
24 lines
351 B
Go
24 lines
351 B
Go
package utils
|
|
|
|
import (
|
|
"golang.org/x/net/proxy"
|
|
"net/url"
|
|
)
|
|
|
|
func GetDial(p string) proxy.ContextDialer {
|
|
u, err := url.Parse(p)
|
|
if err != nil {
|
|
return proxy.Direct
|
|
}
|
|
dialer, err := proxy.FromURL(u, proxy.Direct)
|
|
if err != nil {
|
|
return proxy.Direct
|
|
}
|
|
|
|
d, ok := dialer.(proxy.ContextDialer)
|
|
if !ok {
|
|
return proxy.Direct
|
|
}
|
|
return d
|
|
}
|