aboutsummaryrefslogtreecommitdiff
path: root/backend/main.go
diff options
context:
space:
mode:
Diffstat (limited to 'backend/main.go')
-rw-r--r--backend/main.go38
1 files changed, 17 insertions, 21 deletions
diff --git a/backend/main.go b/backend/main.go
index e693d15..a50be7e 100644
--- a/backend/main.go
+++ b/backend/main.go
@@ -4,20 +4,18 @@ import (
4 "fmt" 4 "fmt"
5 "log" 5 "log"
6 "os" 6 "os"
7 "time"
8 7
9 "lphub/api" 8 "lphub/api"
10 "lphub/database" 9 "lphub/database"
11 _ "lphub/docs" 10 _ "lphub/docs"
12 11
13 "github.com/gin-contrib/cors"
14 "github.com/gin-gonic/gin" 12 "github.com/gin-gonic/gin"
15 "github.com/joho/godotenv" 13 "github.com/joho/godotenv"
16) 14)
17 15
18// @title Least Portals Database API 16// @title Least Portals Hub
19// @version 1.0 17// @version 1.0
20// @description Backend API endpoints for the Least Portals Database. 18// @description Backend API endpoints for Least Portals Hub.
21 19
22// @license.name GNU Affero General Public License, Version 3 20// @license.name GNU Affero General Public License, Version 3
23// @license.url https://www.gnu.org/licenses/agpl-3.0.html 21// @license.url https://www.gnu.org/licenses/agpl-3.0.html
@@ -33,24 +31,22 @@ func main() {
33 gin.SetMode(gin.ReleaseMode) 31 gin.SetMode(gin.ReleaseMode)
34 } 32 }
35 router := gin.Default() 33 router := gin.Default()
36 router.Use(cors.New(cors.Config{
37 AllowOrigins: []string{"*"},
38 AllowMethods: []string{"GET", "POST", "DELETE", "PUT", "PATCH"},
39 AllowHeaders: []string{"Origin"},
40 ExposeHeaders: []string{"Content-Length"},
41 AllowCredentials: true,
42 AllowOriginFunc: func(origin string) bool {
43 return origin == "https://github.com"
44 },
45 MaxAge: 12 * time.Hour,
46 }))
47 database.ConnectDB() 34 database.ConnectDB()
48 api.InitRoutes(router) 35 api.InitRoutes(router)
49 router.Static("/static", "../frontend/build/static") 36 // for debugging
50 router.StaticFile("/", "../frontend/build/index.html") 37 // router.Use(cors.New(cors.Config{
51 router.NoRoute(func(c *gin.Context) { 38 // AllowOrigins: []string{"*"},
52 c.File("../frontend/build/index.html") 39 // AllowMethods: []string{"GET", "POST", "DELETE", "PUT", "PATCH"},
53 }) 40 // AllowHeaders: []string{"Origin"},
54 router.MaxMultipartMemory = 500 << 20 // 500 mb limit for demos 41 // ExposeHeaders: []string{"Content-Length"},
42 // AllowCredentials: true,
43 // MaxAge: 12 * time.Hour,
44 // }))
45 // router.Static("/static", "../frontend/build/static")
46 // router.StaticFile("/", "../frontend/build/index.html")
47 // router.NoRoute(func(c *gin.Context) {
48 // c.File("../frontend/build/index.html")
49 // })
50 router.MaxMultipartMemory = 200 << 20 // 200 mb limit for demos
55 router.Run(fmt.Sprintf(":%s", os.Getenv("PORT"))) 51 router.Run(fmt.Sprintf(":%s", os.Getenv("PORT")))
56} 52}