Documentation ¶
Index ¶
- func CheckHttp3ViaDNS(domain string, port string, DOHServer string) (bool, error)
- func CheckHttp3ViaHttp2(domain string, port string) (bool, error)
- func ContainsGeneric[T comparable](slice []T, element T) bool
- func CreateHTTP3TransportWithIP(ip string) http.RoundTripper
- func CreateHTTP3TransportWithIPGetter(getter func() (string, error)) adapter.HTTPRoundTripperAndCloserInterface
- func DoHTTP3Client(msg *dns.Msg, dohttp3ServerURL string) (r *dns.Msg, err error)
- func DohClient(msg *dns.Msg, DOHServer string) (r *dns.Msg, err error)
- func FetchHttp3WithIP(ip, url string) (*http.Response, error)
- func PrintResponse(resp *http.Response)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CheckHttp3ViaDNS ¶
CheckH3ViaDNS 通过DNS查询来检查指定域名和端口是否支持H3协议。 domain: 需要检查的域名。 port: 需要检查的端口。 DOHServer: DNS-over-HTTPS服务器的地址。 返回值: 支持H3协议返回true,否则返回false。如果出现错误,将返回错误信息。
func CheckHttp3ViaHttp2 ¶
CheckHttp3ViaHttp2 通过HTTP/2检查特定域名和端口是否支持HTTP/3 参数: - domain: 需要检查的域名 - port: 需要检查的端口号 返回值: - bool: 如果支持HTTP/3,则返回true,否则返回false - error: 如果检查过程中遇到错误,则返回错误信息
func ContainsGeneric ¶
func ContainsGeneric[T comparable](slice []T, element T) bool
该函数支持泛型,可以适用于任意实现了可比较接口(comparable)的类型。 参数:
slice []T - 一个泛型切片,其中 T 必须实现 comparable 接口。 element T - 需要查找的元素,其类型与切片元素类型相同。
返回值:
bool - 如果切片中包含指定元素,则返回 true;否则返回 false。
func CreateHTTP3TransportWithIP ¶
func CreateHTTP3TransportWithIP(ip string) http.RoundTripper
CreateHTTP3TransportWithIP 创建一个使用指定IP地址的HTTP/3传输。
参数:
ip string - 要使用的IP地址。
返回值:
http.RoundTripper - 一个实现了HTTP运输接口的对象,可以用于HTTP客户端进行请求。
func CreateHTTP3TransportWithIPGetter ¶
func CreateHTTP3TransportWithIPGetter(getter func() (string, error)) adapter.HTTPRoundTripperAndCloserInterface
CreateHTTP3TransportWithIPGetter 创建一个带有自定义IP获取器的HTTP/3传输器。 此函数允许在每次HTTP请求时动态指定IP地址,用于建立QUIC连接。
参数: getter func() string - 一个函数,返回一个字符串形式的IP地址。
返回值: http.RoundTripper - 符合HTTP运输接口的定制HTTP/3传输器。
func DoHTTP3Client ¶
DohClient 是一个通过DOH(DNS over HTTPs)协议与DNS服务器进行通信的函数。
参数: msg: 代表DNS查询消息的dns.Msg对象。 dohServer: 代表DOH服务器的URL字符串。
返回值: r: 代表DNS应答消息的dns.Msg对象。 err: 如果过程中发生错误,则返回错误信息。
func DohClient ¶
DohClient 是一个通过DOH(DNS over HTTPS)协议与DNS服务器进行通信的函数。 它封装了dns_experiment包中的同名函数,简化了与DNS服务器交互的流程。
参数: msg - 指向dns.Msg的指针,包含要发送的DNS查询信息。 DOHServer - 字符串类型,表示DOH服务器的URL。
返回值: r - 指向dns.Msg的指针,包含从DNS服务器接收到的响应信息。 err - 错误类型,如果在与DNS服务器通信过程中发生错误,则返回非nil的错误值。
func FetchHttp3WithIP ¶
FetchHttp3WithIP 使用IP地址通过HTTP/3协议获取网络资源。
参数: ip: 要使用的IP地址。 url: 要请求的URL。
返回值: *http.Response: 请求成功的响应对象。 error: 请求过程中发生的任何错误。
func PrintResponse ¶
Types ¶
This section is empty.