| 1234567891011121314151617181920212223242526272829303132333435363738394041 |
- 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 {
- // use pusher.Push() to do server 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",
- })
- })
- // Listen and Server in https://127.0.0.1:8080
- r.RunTLS(":8080", "./testdata/server.pem", "./testdata/server.key")
- }
|