arnaucube
arnaucube/gogame-oldPublic Self-hosted repository
gogame-old/endpoint/serve.go
endpoint/serve.goRaw
 1package endpoint
 2
 3import (
 4	"github.com/arnaucube/gogame/config"
 5	"github.com/arnaucube/gogame/database"
 6	"github.com/arnaucube/gogame/services/usersrv"
 7	"github.com/gin-contrib/cors"
 8	"github.com/gin-gonic/gin"
 9)
10
11var serverConfig config.Config
12var db *database.Db
13var userservice *usersrv.Service
14
15func newApiService() *gin.Engine {
16	api := gin.Default()
17	api.Use(cors.Default())
18	api.GET("/", handleMain)
19	api.GET("/info", handleInfo)
20	api.POST("/register", handleRegister)
21	api.POST("/login", handleLogin)
22
23	// TODO add jwt checker
24	api.GET("/resources/:userid", handleGetResources)
25	return api
26}
27
28func Serve(cnfg config.Config, _db *database.Db, _userservice *usersrv.Service) *gin.Engine {
29	serverConfig = cnfg
30	db = _db
31	userservice = _userservice
32	return newApiService()
33}