Files
auth_service_go/main.go
T
2025-05-29 01:11:04 +07:00

44 lines
1.1 KiB
Go

package main
import (
"auth_service/api/auth"
"auth_service/api/users"
"auth_service/database"
"log"
"net/http"
"os"
"github.com/joho/godotenv"
)
func main() {
err := godotenv.Load("auth_service.config")
if err != nil {
log.Fatal("Error loading .env file")
}
database.Init()
database.Migrate()
if os.Getenv("USERS_FILE") != "" {
allusers := database.GetUsersFromFile(os.Getenv("USERS_FILE"))
for i := range allusers {
database.CreateUser(&allusers[i])
}
}
http.HandleFunc("/api/token", auth.Token)
http.HandleFunc("/api/token/verify", auth.VerifyToken)
http.HandleFunc("/api/access", auth.VerifyToken)
if os.Getenv("ENABLE_SELF_REGISTER") == "true" {
http.HandleFunc("/api/register", users.RegisterUser)
}
http.HandleFunc("/api/users", users.GetAllUsers)
http.HandleFunc("/api/users/user", users.GetUser)
http.HandleFunc("/api/users/password", users.ChangePassword)
http.HandleFunc("/api/users/change", users.ChangeUser)
http.HandleFunc("/api/users/del", users.DelUser)
http.HandleFunc("/api/users/add", users.AddUser)
http.ListenAndServe(":8090", nil)
}