Restructure

This commit is contained in:
Eden Kirin
2023-10-26 09:43:24 +02:00
parent da3deedb0c
commit 2b13292e3b
4 changed files with 16 additions and 15 deletions

View File

@ -1,4 +1,4 @@
package main package common
import ( import (
"fmt" "fmt"

View File

@ -1,4 +1,4 @@
package main package common
import ( import (
"fmt" "fmt"

View File

@ -1,4 +1,4 @@
package main package common
import ( import (
"encoding/json" "encoding/json"

View File

@ -2,6 +2,7 @@ package main
import ( import (
"fmt" "fmt"
"iris-test/app/common"
"iris-test/app/views" "iris-test/app/views"
"os" "os"
"time" "time"
@ -15,32 +16,32 @@ import (
var redisDB *redis.Database var redisDB *redis.Database
func createSessionEngine() *sessions.Sessions { func createSessionEngine() *sessions.Sessions {
redisAddr := fmt.Sprintf("%s:%d", Config.Redis.Host, Config.Redis.Port) redisAddr := fmt.Sprintf("%s:%d", common.Config.Redis.Host, common.Config.Redis.Port)
redisDB = redis.New(redis.Config{ redisDB = redis.New(redis.Config{
Network: "tcp", Network: "tcp",
Addr: redisAddr, Addr: redisAddr,
Timeout: time.Duration(30) * time.Second, Timeout: time.Duration(30) * time.Second,
MaxActive: 10, MaxActive: 10,
Username: Config.Redis.Username, Username: common.Config.Redis.Username,
Password: Config.Redis.Password, Password: common.Config.Redis.Password,
Database: Config.Redis.Database, Database: common.Config.Redis.Database,
Prefix: Config.Redis.Prefix, Prefix: common.Config.Redis.Prefix,
Driver: redis.GoRedis(), // defaults to this driver. Driver: redis.GoRedis(), // defaults to this driver.
// To set a custom, existing go-redis client, use the "SetClient" method: // To set a custom, existing go-redis client, use the "SetClient" method:
// Driver: redis.GoRedis().SetClient(customGoRedisClient) // Driver: redis.GoRedis().SetClient(customGoRedisClient)
}) })
sessions_engine := sessions.New(sessions.Config{ sessionsEngine := sessions.New(sessions.Config{
Cookie: "_session_id", Cookie: "_session_id",
Expires: 0, // defaults to 0: unlimited life. Another good value is: 45 * time.Minute, Expires: 0, // defaults to 0: unlimited life. Another good value is: 45 * time.Minute,
AllowReclaim: true, AllowReclaim: true,
CookieSecureTLS: true, CookieSecureTLS: true,
}) })
sessions_engine.UseDatabase(redisDB) sessionsEngine.UseDatabase(redisDB)
return sessions_engine return sessionsEngine
} }
func createAccessLog() *accesslog.AccessLog { func createAccessLog() *accesslog.AccessLog {
@ -83,7 +84,7 @@ func createApp() *iris.Application {
accessLog := createAccessLog() accessLog := createAccessLog()
app := iris.New() app := iris.New()
app.Logger().SetLevel(Config.Application.LogLevel) app.Logger().SetLevel(common.Config.Application.LogLevel)
app.Use(sessionsEngine.Handler()) app.Use(sessionsEngine.Handler())
app.UseRouter(accessLog.Handler) app.UseRouter(accessLog.Handler)
app.RegisterView(iris.Jet("./app/templates", ".jet").Reload(true)) app.RegisterView(iris.Jet("./app/templates", ".jet").Reload(true))
@ -92,9 +93,9 @@ func createApp() *iris.Application {
} }
func main() { func main() {
InitCfg() common.InitCfg()
InitLogging() common.InitLogging()
InitDB() common.InitDB()
app := createApp() app := createApp()
defer redisDB.Close() defer redisDB.Close()