我有一个使用HTTP / 2的基本客户端和服务器实现。我也想测试服务器也可以使用HTTP / 1。
是否可以将协议从HTTP / 2更改为HTTP / 1.x?
客户代码:
func main() {
host = "https://127.0.0.1:8080"
client = http.Client{
// InsecureTLSDial is temporary and will likely be
// replaced by a different API later.
Transport: &http2.Transport{
TLSClientConfig: &tls.Config{
InsecureSkipVerify: true,
},
},
}
// further functionality
}
服务器代码:
func main() {
var srv http.Server
srv.Addr = ":8080"
// Set Routes
routes()
// Start server
srv.ListenAndServeTLS("certs/localhost.cert", "certs/localhost.key")
}
答案 0 :(得分:0)
我找到了一个简单的解决方案。
更改客户端
Transport: &http2.Transport{
TLSClientConfig: &tls.Config{
InsecureSkipVerify: true,
},
},
作者
Transport: &http.Transport{
TLSNextProto: make(map[string]func(authority string, c *tls.Conn) http.RoundTripper),
TLSClientConfig: &tls.Config{
InsecureSkipVerify: true,
},
},