예제 #1
0
func main() {
	port := os.Getenv("PORT")

	if port == "" {
		log.Fatal("$PORT must be set")
	}

	router := gin.New()
	router.Use(gin.Logger())
	router.LoadHTMLGlob("templates/*.tmpl.html")
	router.Static("/static", "static")

	sign := make(chan int)
	resp := make(chan int)

	router.GET("/", func(c *gin.Context) {
		go counter(sign, resp)
		c.HTML(http.StatusOK, "index.tmpl.html", nil)
	})

	router.GET("/show", func(c *gin.Context) {
		sign <- 1
		msg := <-resp
		c.String(200, strconv.Itoa(msg))
	})

	router.Run(":" + port)
}
예제 #2
0
func main() {
	env = NewEnv()
	defer env.db.session.Close()

	// Creates a gin router with default middlewares:
	// logger and recovery (crash-free) middlewares
	// router := gin.Default()
	// Recovery returns a middleware that recovers from any panics and writes
	// a 500 if there was one.
	router := gin.New()
	router.Use(gin.Recovery())
	router.Use(gin.Logger())
	router.LoadHTMLGlob("templates/*.tmpl.html")
	router.Static("/static", "static")

	router.GET("/", indexFunc)

	router.GET("/mark", mdFunc)

	dict := router.Group("/dictionary")
	{
		dict.GET("/db", dbFunc)
	}

	router.Run(":" + env.port)
}
예제 #3
0
func StartGin() {
	gin.SetMode(gin.ReleaseMode)

	router := gin.New()
	router.Use(rateLimit, gin.Recovery())
	router.LoadHTMLGlob("resources/*.templ.html")
	router.Static("/static", "resources/static")
	router.GET("/", index)
	router.GET("/room/:roomid", roomGET)
	router.POST("/room-post/:roomid", roomPOST)
	router.GET("/stream/:roomid", streamRoom)

	router.Run(":80")
}
예제 #4
0
// This function's name is a must. App Engine uses it to drive the requests properly.
func init() {
	// Starts a new Gin instance with no middle-ware
	r := gin.New()

	// Define your handlers
	r.GET("/", func(c *gin.Context) {
		c.String(200, "Hello World!")
	})
	r.GET("/ping", func(c *gin.Context) {
		c.String(200, "pong")
	})

	// Handle all requests using net/http
	http.Handle("/", r)
}
예제 #5
0
func main() {
	port := os.Getenv("PORT")

	if port == "" {
		log.Fatal("$PORT must be set")
	}

	router := gin.New()
	router.Use(gin.Logger())
	router.LoadHTMLGlob("templates/*.tmpl.html")
	router.Static("/static", "static")

	router.GET("/", func(c *gin.Context) {
		c.HTML(http.StatusOK, "index.tmpl.html", nil)
	})

	router.Run(":" + port)
}
예제 #6
0
func main() {
	port := os.Getenv("PORT")

	if port == "" {
		log.Fatal("$PORT must be set")
	}

	router := gin.New()
	router.Use(gin.Logger())

	router.POST("/wait", func(c *gin.Context) {
		second_str := c.DefaultQuery("seconds", "1")
		seconds, _ := strconv.Atoi(second_str)
		time.Sleep(time.Duration(seconds) * time.Second)

		c.JSON(http.StatusOK, gin.H{
			"status": "ok",
		})
	})

	router.Run(":" + port)
}