企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
http.Pusher 仅支持 **go1.8+**。 更多信息,请查阅 [golang blog](https://blog.golang.org/h2push)。 ```go package main import ( "html/template" "log" "github.com/gin-gonic/gin" ) var html = template.Must(template.New("https").Parse(` <html> <head> <title>Https Test</title> <script src="/assets/app.js"></script> </head> <body> <h1 style="color:red;">Welcome, Ginner!</h1> </body> </html> `)) func main() { r := gin.Default() r.Static("/assets", "./assets") r.SetHTMLTemplate(html) r.GET("/", func(c *gin.Context) { if pusher := c.Writer.Pusher(); pusher != nil { // 使用 pusher.Push() 做服务器推送 if err := pusher.Push("/assets/app.js", nil); err != nil { log.Printf("Failed to push: %v", err) } } c.HTML(200, "https", gin.H{ "status": "success", }) }) // 监听并在 https://127.0.0.1:8080 上启动服务 r.RunTLS(":8080", "./testdata/server.pem", "./testdata/server.key") } ```