package main

import (
    "io/ioutil"
    "strings"

    "github.com/gin-contrib/static"
    "github.com/gin-gonic/gin"
)

func main() {
    router := gin.Default()
    router.Use(static.Serve("/", static.LocalFile("dist", true)))
    router.NoRoute(func(c *gin.Context) {
        accept := c.Request.Header.Get("Accept")
        flag := strings.Contains(accept, "text/html")
        if flag {
            content, err := ioutil.ReadFile("dist/index.html")
            if (err) != nil {
                c.Writer.WriteHeader(404)
                c.Writer.WriteString("Not Found")
                return
            }
            c.Writer.WriteHeader(200)
            c.Writer.Header().Add("Accept", "text/html")
            c.Writer.Write((content))
            c.Writer.Flush()
        }
    })
    router.Run(":1224")
}