From 02dd25ec670e879972e1d01b3583980708ca38f1 Mon Sep 17 00:00:00 2001 From: makeyangcom Date: Wed, 6 Mar 2024 10:47:22 +0800 Subject: [PATCH] 1.0.0 --- server/framework/config/config.go | 18 +++- server/framework/controller/ping/ping.go | 18 ---- server/framework/database/database.go | 14 ++- .../database/{interface.go => function.go} | 21 +++- server/framework/framework.go | 17 +-- .../controller.go => interface/interface.go} | 22 ++-- server/framework/interface/ping/ping.go | 21 ++++ server/framework/utils/empty.go | 11 ++ server/framework/utils/empty_data.go | 3 - .../framework/utils/{hashids.go => hash.go} | 8 ++ server/framework/utils/header.go | 44 ++------ server/framework/utils/mail.go | 25 +++++ server/framework/utils/mailbox.go | 17 --- server/framework/utils/markdown.go | 27 ----- server/framework/utils/md5.go | 11 +- server/framework/utils/order.go | 8 ++ server/framework/utils/phone.go | 67 ++---------- server/framework/utils/price.go | 8 ++ server/framework/utils/rand.go | 8 ++ server/framework/utils/return.go | 101 +++++++++++------- server/framework/utils/time.go | 8 ++ server/main.go | 12 ++- tools/update.sh | 1 + 23 files changed, 252 insertions(+), 238 deletions(-) delete mode 100644 server/framework/controller/ping/ping.go rename server/framework/database/{interface.go => function.go} (73%) rename server/framework/{controller/controller.go => interface/interface.go} (66%) create mode 100644 server/framework/interface/ping/ping.go create mode 100644 server/framework/utils/empty.go delete mode 100644 server/framework/utils/empty_data.go rename server/framework/utils/{hashids.go => hash.go} (63%) create mode 100644 server/framework/utils/mail.go delete mode 100644 server/framework/utils/mailbox.go delete mode 100644 server/framework/utils/markdown.go diff --git a/server/framework/config/config.go b/server/framework/config/config.go index e309f3e..31a37b6 100644 --- a/server/framework/config/config.go +++ b/server/framework/config/config.go @@ -1,22 +1,26 @@ /** - ****************************************************************************** - * @file config.go - * @author MakerYang - ****************************************************************************** - */ +#***************************************************************************** +# @file config.go +# @author MakerYang(https://www.makeryang.com) +# @statement 免费课程配套开源项目,任何形式收费均为盗版 +#***************************************************************************** +*/ package Config import "time" +// Get 定义系统配置模块的调用指针 var Get = &config{} +// 声明系统配置模块数据结构体 type config struct { Service service `json:"service"` Database database `json:"database"` Hash hash `json:"hash"` } +// 声明系统配置模块的服务器配置数据结构体 type service struct { Mode string `json:"mode"` HttpPort int `json:"http_port"` @@ -24,6 +28,7 @@ type service struct { WriteTimeout time.Duration `json:"write_timeout"` } +// 声明系统配置模块的数据库配置数据结构体 type database struct { Type string `json:"type"` User string `json:"user"` @@ -32,11 +37,14 @@ type database struct { Name string `json:"name"` } +// 声明系统配置模块的HASH加密配置数据结构体 type hash struct { Salt string `json:"salt"` } +// Init 初始化系统配置 func Init() { + Get.Service.Mode = "debug" Get.Service.HttpPort = 7000 Get.Service.ReadTimeout = 60 * time.Second diff --git a/server/framework/controller/ping/ping.go b/server/framework/controller/ping/ping.go deleted file mode 100644 index f4bd3a5..0000000 --- a/server/framework/controller/ping/ping.go +++ /dev/null @@ -1,18 +0,0 @@ -/** - ****************************************************************************** - * @file ping.go - * @author MakerYang - ****************************************************************************** - */ - -package PingController - -import ( - "Game/framework/utils" - "github.com/gin-gonic/gin" -) - -func Ping(c *gin.Context) { - Utils.Success(c, Utils.EmptyData{}) - return -} diff --git a/server/framework/database/database.go b/server/framework/database/database.go index 42a9e31..ef48157 100644 --- a/server/framework/database/database.go +++ b/server/framework/database/database.go @@ -1,9 +1,10 @@ /** - ****************************************************************************** - * @file database.go - * @author MakerYang - ****************************************************************************** - */ +#***************************************************************************** +# @file database.go +# @author MakerYang(https://www.makeryang.com) +# @statement 免费课程配套开源项目,任何形式收费均为盗版 +#***************************************************************************** +*/ package Database @@ -17,14 +18,17 @@ import ( "time" ) +// Get 定义数据库模块的调用指针 var Get *gorm.DB +// DefaultField 声明数据库默认字段 type DefaultField struct { CreateAt int `gorm:"Column:create_at" json:"create_at"` UpdateAt int `gorm:"Column:update_at" json:"update_at"` DeleteAt int `gorm:"Column:delete_at" json:"delete_at"` } +// Init 初始化数据库连接 func Init() { var err error diff --git a/server/framework/database/interface.go b/server/framework/database/function.go similarity index 73% rename from server/framework/database/interface.go rename to server/framework/database/function.go index d9fbdd4..f06ac27 100644 --- a/server/framework/database/interface.go +++ b/server/framework/database/function.go @@ -1,9 +1,10 @@ /** - ****************************************************************************** - * @file interface.go - * @author MakerYang - ****************************************************************************** - */ +#***************************************************************************** +# @file function.go +# @author MakerYang(https://www.makeryang.com) +# @statement 免费课程配套开源项目,任何形式收费均为盗版 +#***************************************************************************** +*/ package Database @@ -12,53 +13,63 @@ import ( "time" ) +// Base 声明数据库基础数据结构体 type Base struct { TableName string } +// New 实例化数据表 func New(table string) *Base { return &Base{ TableName: table, } } +// CreateData 创建数据 func (base *Base) CreateData(data interface{}) error { err := Get.Table(base.TableName).Create(data).Error return err } +// UpdateData 更新数据 func (base *Base) UpdateData(query interface{}, data map[string]interface{}) error { data["update_at"] = time.Now().Unix() err := Get.Table(base.TableName).Where(query).Updates(data).Error return err } +// ExprData 更新数值类字段值 func (base *Base) ExprData(query interface{}, field string, operation string, data int) error { err := Get.Table(base.TableName).Where(query).Update(field, gorm.Expr(field+" "+operation+" ?", data)).Error return err } +// GetData 读取一条数据 func (base *Base) GetData(dataStruct interface{}, query interface{}, order string) error { err := Get.Table(base.TableName).Where(query).Order(order).First(dataStruct).Error return err } +// ListData 读取多条数据 func (base *Base) ListData(dataStruct interface{}, query interface{}, order string, limit int) error { err := Get.Table(base.TableName).Where(query).Order(order).Limit(limit).Find(dataStruct).Error return err } +// PageData 读取分页数据 func (base *Base) PageData(dataStruct interface{}, query interface{}, order string, limit int, page int) error { err := Get.Table(base.TableName).Where(query).Order(order).Limit(limit).Offset(page * limit).Find(dataStruct).Error return err } +// CountData 获取数据总数 func (base *Base) CountData(query interface{}) (int, error) { count := 0 err := Get.Table(base.TableName).Where(query).Count(&count).Error return count, err } +// DeleteData 删除数据 func (base *Base) DeleteData(dataStruct interface{}, query interface{}) error { err := Get.Table(base.TableName).Where(query).Delete(dataStruct).Error return err diff --git a/server/framework/framework.go b/server/framework/framework.go index ccf1e7d..cf87c63 100644 --- a/server/framework/framework.go +++ b/server/framework/framework.go @@ -1,16 +1,17 @@ /** - ****************************************************************************** - * @file framework.go - * @author MakerYang - ****************************************************************************** - */ +#***************************************************************************** +# @file framework.go +# @author MakerYang(https://www.makeryang.com) +# @statement 免费课程配套开源项目,任何形式收费均为盗版 +#***************************************************************************** +*/ package Framework import ( "Game/framework/config" - "Game/framework/controller" "Game/framework/database" + "Game/framework/interface" ) func Init() { @@ -18,6 +19,6 @@ func Init() { Config.Init() // 初始化数据库 Database.Init() - // 初始化控制器 - Controller.Init() + // 初始化接口路由 + Interface.Init() } diff --git a/server/framework/controller/controller.go b/server/framework/interface/interface.go similarity index 66% rename from server/framework/controller/controller.go rename to server/framework/interface/interface.go index 760da98..ccbc37f 100644 --- a/server/framework/controller/controller.go +++ b/server/framework/interface/interface.go @@ -1,15 +1,16 @@ /** - ****************************************************************************** - * @file controller.go - * @author MakerYang - ****************************************************************************** - */ +#***************************************************************************** +# @file interface.go +# @author MakerYang(https://www.makeryang.com) +# @statement 免费课程配套开源项目,任何形式收费均为盗版 +#***************************************************************************** +*/ -package Controller +package Interface import ( "Game/framework/config" - "Game/framework/controller/ping" + "Game/framework/interface/ping" "context" "fmt" "github.com/gin-gonic/gin" @@ -21,17 +22,22 @@ import ( "time" ) +// 接口路由 func router() *gin.Engine { + router := gin.New() gin.SetMode(Config.Get.Service.Mode) - router.GET("/ping", PingController.Ping) + // 健康检查接口 + router.GET("/ping", PingInterface.Ping) return router } +// Init 接口初始化 func Init() { + routers := router() var HttpServer = &http.Server{ diff --git a/server/framework/interface/ping/ping.go b/server/framework/interface/ping/ping.go new file mode 100644 index 0000000..ec1caf1 --- /dev/null +++ b/server/framework/interface/ping/ping.go @@ -0,0 +1,21 @@ +/** +#***************************************************************************** +# @file ping.go +# @author MakerYang(https://www.makeryang.com) +# @statement 免费课程配套开源项目,任何形式收费均为盗版 +#***************************************************************************** +*/ + +package PingInterface + +import ( + "Game/framework/utils" + "github.com/gin-gonic/gin" +) + +// Ping 健康检查接口 +func Ping(c *gin.Context) { + + Utils.Success(c, Utils.Empty{}) + return +} diff --git a/server/framework/utils/empty.go b/server/framework/utils/empty.go new file mode 100644 index 0000000..d1b6bcf --- /dev/null +++ b/server/framework/utils/empty.go @@ -0,0 +1,11 @@ +/** +#***************************************************************************** +# @file empty.go +# @author MakerYang(https://www.makeryang.com) +# @statement 免费课程配套开源项目,任何形式收费均为盗版 +#***************************************************************************** +*/ + +package Utils + +type Empty struct{} diff --git a/server/framework/utils/empty_data.go b/server/framework/utils/empty_data.go deleted file mode 100644 index dd7202f..0000000 --- a/server/framework/utils/empty_data.go +++ /dev/null @@ -1,3 +0,0 @@ -package Utils - -type EmptyData struct{} diff --git a/server/framework/utils/hashids.go b/server/framework/utils/hash.go similarity index 63% rename from server/framework/utils/hashids.go rename to server/framework/utils/hash.go index 20e6836..4a8a05e 100644 --- a/server/framework/utils/hashids.go +++ b/server/framework/utils/hash.go @@ -1,3 +1,11 @@ +/** +#***************************************************************************** +# @file hash.go +# @author MakerYang(https://www.makeryang.com) +# @statement 免费课程配套开源项目,任何形式收费均为盗版 +#***************************************************************************** +*/ + package Utils import ( diff --git a/server/framework/utils/header.go b/server/framework/utils/header.go index e5d717a..56be9ad 100644 --- a/server/framework/utils/header.go +++ b/server/framework/utils/header.go @@ -1,3 +1,11 @@ +/** +#***************************************************************************** +# @file header.go +# @author MakerYang(https://www.makeryang.com) +# @statement 免费课程配套开源项目,任何形式收费均为盗版 +#***************************************************************************** +*/ + package Utils import "strings" @@ -11,39 +19,3 @@ func CheckUserAgent(userAgent string) bool { return Status } - -func CheckGame(token string) (int, int, bool) { - Status := false - GameId := 0 - GameAccountId := 0 - - if token != "" { - tokenMap, _ := DecodeId(128, token) - if len(tokenMap) == 2 { - GameId = tokenMap[0] - GameAccountId = tokenMap[1] - Status = true - } - } - - if GameId == 0 || GameAccountId == 0 { - Status = false - } - - return GameId, GameAccountId, Status -} - -func CheckUser(token string) (int, bool) { - Status := false - Uid := 0 - - if token != "" { - tokenMap, _ := DecodeId(32, token) - if len(tokenMap) == 3 { - Uid = tokenMap[0] - Status = true - } - } - - return Uid, Status -} diff --git a/server/framework/utils/mail.go b/server/framework/utils/mail.go new file mode 100644 index 0000000..a0053ea --- /dev/null +++ b/server/framework/utils/mail.go @@ -0,0 +1,25 @@ +/** +#***************************************************************************** +# @file mail.go +# @author MakerYang(https://www.makeryang.com) +# @statement 免费课程配套开源项目,任何形式收费均为盗版 +#***************************************************************************** +*/ + +package Utils + +import "gopkg.in/gomail.v2" + +func SendMail(to string, subject string, content string) bool { + status := true + mail := gomail.NewMessage() + mail.SetHeader("From", mail.FormatAddress("", "")) + mail.SetHeader("To", to) + mail.SetHeader("Subject", subject) + mail.SetBody("text/html", content) + send := gomail.NewDialer("smtp.qq.com", 587, "", "") + if err := send.DialAndSend(mail); err != nil { + status = false + } + return status +} diff --git a/server/framework/utils/mailbox.go b/server/framework/utils/mailbox.go deleted file mode 100644 index e09b023..0000000 --- a/server/framework/utils/mailbox.go +++ /dev/null @@ -1,17 +0,0 @@ -package Utils - -import "gopkg.in/gomail.v2" - -func SendMail(to string, subject string, content string) bool { - status := true - mail := gomail.NewMessage() - mail.SetHeader("From", mail.FormatAddress("open@wileho.com", "GEEKROS")) - mail.SetHeader("To", to) - mail.SetHeader("Subject", subject) - mail.SetBody("text/html", content) - send := gomail.NewDialer("smtp.qq.com", 587, "open@wileho.com", "") - if err := send.DialAndSend(mail); err != nil { - status = false - } - return status -} diff --git a/server/framework/utils/markdown.go b/server/framework/utils/markdown.go deleted file mode 100644 index 180a818..0000000 --- a/server/framework/utils/markdown.go +++ /dev/null @@ -1,27 +0,0 @@ -package Utils - -import ( - "regexp" - "strings" -) - -func FilterMarkdown(input string) string { - quoteBlockRegex := regexp.MustCompile(`^\s*>[ \t]*(.*)$`) - lines := strings.Split(input, "\n") - var quoteLines []string - for _, line := range lines { - if quoteBlockRegex.MatchString(line) { - match := quoteBlockRegex.FindStringSubmatch(line) - quoteLines = append(quoteLines, match[1]) - } - } - return strings.Join(quoteLines, "") -} - -func FilterSummary(input string, maxLength int) string { - text := strings.TrimSpace(input) - if len(text) <= maxLength { - return text - } - return text[:maxLength] -} diff --git a/server/framework/utils/md5.go b/server/framework/utils/md5.go index d412532..8b134ea 100644 --- a/server/framework/utils/md5.go +++ b/server/framework/utils/md5.go @@ -1,9 +1,10 @@ /** - ****************************************************************************** - * @file md5.go - * @author MakerYang - ****************************************************************************** - */ +#***************************************************************************** +# @file md5.go +# @author MakerYang(https://www.makeryang.com) +# @statement 免费课程配套开源项目,任何形式收费均为盗版 +#***************************************************************************** +*/ package Utils diff --git a/server/framework/utils/order.go b/server/framework/utils/order.go index e57f3e2..86087c5 100644 --- a/server/framework/utils/order.go +++ b/server/framework/utils/order.go @@ -1,3 +1,11 @@ +/** +#***************************************************************************** +# @file order.go +# @author MakerYang(https://www.makeryang.com) +# @statement 免费课程配套开源项目,任何形式收费均为盗版 +#***************************************************************************** +*/ + package Utils import ( diff --git a/server/framework/utils/phone.go b/server/framework/utils/phone.go index 2af2465..f1ad34a 100644 --- a/server/framework/utils/phone.go +++ b/server/framework/utils/phone.go @@ -1,11 +1,14 @@ +/** +#***************************************************************************** +# @file phone.go +# @author MakerYang(https://www.makeryang.com) +# @statement 免费课程配套开源项目,任何形式收费均为盗版 +#***************************************************************************** +*/ + package Utils import ( - "bytes" - "encoding/json" - "io/ioutil" - "log" - "net/http" "regexp" ) @@ -13,57 +16,3 @@ func MobileFormat(str string) string { re, _ := regexp.Compile("(\\d{3})(\\d{6})(\\d{2})") return re.ReplaceAllString(str, "$1******$3") } - -func SendMessage(form string, phone string, info string) bool { - status := true - if form == "" || phone == "" || info == "" { - status = false - return status - } - desc := "" - if form == "express" { - desc = "【GEEKROS】Hi," + info + " ,你在GEEKROS的订单已经发货,请留意快递信息,及时查收。" - } - if form == "account" { - desc = "【GEEKROS】你的验证码为:" + info + " ,有效期10分钟,工作人员绝不会索取此验证码,切勿告知他人。" - } - - apiUrl := "https://smssh1.253.com/msg/v1/send/json" - params := make(map[string]interface{}) - params["account"] = "" - params["password"] = "" - params["phone"] = phone - params["msg"] = desc - params["report"] = "false" - - bytesData, err := json.Marshal(params) - if err != nil { - status = false - return status - } - - reader := bytes.NewReader(bytesData) - request, err := http.NewRequest("POST", apiUrl, reader) - if err != nil { - status = false - return status - } - - request.Header.Set("Content-Type", "application/json;charset=UTF-8") - client := http.Client{} - resp, err := client.Do(request) - if err != nil { - status = false - return status - } - - respBytes, err := ioutil.ReadAll(resp.Body) - if err != nil { - status = false - return status - } - - log.Println("[PhoneMessage]", string(respBytes)) - - return true -} diff --git a/server/framework/utils/price.go b/server/framework/utils/price.go index a532498..c5d972b 100644 --- a/server/framework/utils/price.go +++ b/server/framework/utils/price.go @@ -1,3 +1,11 @@ +/** +#***************************************************************************** +# @file price.go +# @author MakerYang(https://www.makeryang.com) +# @statement 免费课程配套开源项目,任何形式收费均为盗版 +#***************************************************************************** +*/ + package Utils import "fmt" diff --git a/server/framework/utils/rand.go b/server/framework/utils/rand.go index 7e7e48c..dc6cf8c 100644 --- a/server/framework/utils/rand.go +++ b/server/framework/utils/rand.go @@ -1,3 +1,11 @@ +/** +#***************************************************************************** +# @file rand.go +# @author MakerYang(https://www.makeryang.com) +# @statement 免费课程配套开源项目,任何形式收费均为盗版 +#***************************************************************************** +*/ + package Utils import ( diff --git a/server/framework/utils/return.go b/server/framework/utils/return.go index bf303f8..1c1b582 100644 --- a/server/framework/utils/return.go +++ b/server/framework/utils/return.go @@ -1,9 +1,19 @@ +/** +#***************************************************************************** +# @file return.go +# @author MakerYang(https://www.makeryang.com) +# @statement 免费课程配套开源项目,任何形式收费均为盗版 +#***************************************************************************** +*/ + package Utils import ( "encoding/json" + "fmt" "github.com/gin-gonic/gin" "log" + "math" "net/http" "os" "strconv" @@ -11,95 +21,112 @@ import ( ) type logData struct { - Timestamp int64 `json:"timestamp"` - TimestampFormat string `json:"timestamp_format"` - ClientMethod string `json:"client_method"` - ClientIp string `json:"client_ip"` - ClientParameter string `json:"client_parameter"` - ServerParameter string `json:"server_parameter"` - ServerUrl string `json:"server_url"` - ServerName string `json:"server_name"` - ServerYear string `json:"server_year"` - ServerMonth string `json:"server_month"` - ServerDay string `json:"server_day"` - ServerTime string `json:"server_time"` - TimeLength string `json:"time_length"` + ClientIp string `json:"client_ip"` + ClientMethod string `json:"client_method"` + ClientUrl string `json:"client_url"` + ClientSign string `json:"client_sign"` + ClientToken string `json:"client_token"` + ClientReferer string `json:"client_referer"` + ClientParameter clientParameter `json:"client_parameter"` + ServerParameter string `json:"server_parameter"` + Date string `json:"date"` + Time int64 `json:"time"` + Server string `json:"server"` + Length string `json:"length"` } -func recordLog(c *gin.Context, serverParameter string) { +type clientParameter struct { + Get interface{} `json:"get"` + Post interface{} `json:"post"` +} + +func requestLog(c *gin.Context, serverParameter string) { + data := &logData{} - data.Timestamp = time.Now().Unix() - data.TimestampFormat = time.Now().Format("2006-01-02 15:04:05") + data.Time = time.Now().Unix() + data.Date = time.Now().Format("2006-01-02 15:04:05") data.ClientMethod = c.Request.Method data.ClientIp = c.ClientIP() + data.ClientSign = c.Request.Header.Get("Client-Sign") + data.ClientToken = c.Request.Header.Get("Client-Token") + data.ClientReferer = c.Request.Header.Get("Client-Referer") if data.ClientMethod == "GET" { - data.ClientParameter = c.Request.RequestURI + data.ClientParameter.Get = c.Request.URL.Query() } if data.ClientMethod == "POST" { - clientParam, err := json.Marshal(c.Request.PostForm) - if err != nil { - data.ClientParameter = "" - } - if err == nil { - data.ClientParameter = string(clientParam) - } + data.ClientParameter.Post = c.Request.PostForm } scheme := "http://" if c.Request.TLS != nil { scheme = "https://" } serverUrl := scheme + c.Request.Host + c.Request.URL.Path + data.ClientUrl = serverUrl serverName, _ := os.Hostname() - data.ServerUrl = serverUrl - data.ServerName = serverName - data.ClientParameter = c.GetString("client_parameter") + data.Server = serverName data.ServerParameter = serverParameter - data.ServerYear = time.Now().Format("2006") - data.ServerMonth = time.Now().Format("01") - data.ServerDay = time.Now().Format("02") - data.ServerTime = time.Now().Format("15:04:05") - data.TimeLength = strconv.FormatFloat(float64(time.Now().UnixNano())/1000000-c.GetFloat64("start_time"), 'f', 2, 64) + + clientTimeStr := c.Request.Header.Get("Client-Time") + if clientTimeStr != "" { + clientTimeMs, _ := strconv.ParseInt(clientTimeStr, 10, 64) + serverTimeMs := time.Now().UnixNano() / 1e6 + processingTimeMs := serverTimeMs - clientTimeMs + data.Length = fmt.Sprintf("%.3f", math.Abs(float64(processingTimeMs)/1000.0)) + } + dataString, _ := json.Marshal(data) - log.Println("[Log]", string(dataString)) + log.Println("[request]", string(dataString)) } func Success(c *gin.Context, data interface{}) { + c.JSON(http.StatusOK, gin.H{ "code": 0, "msg": "success", "data": data, }) + logJson, _ := json.Marshal(gin.H{"code": 0, "msg": "success", "data": data}) - recordLog(c, string(logJson)) + + requestLog(c, string(logJson)) } func Error(c *gin.Context, data interface{}) { + c.JSON(http.StatusOK, gin.H{ "code": 10000, "msg": "error", "data": data, }) + logJson, _ := json.Marshal(gin.H{"code": 10000, "msg": "error", "data": data}) - recordLog(c, string(logJson)) + + requestLog(c, string(logJson)) } func Warning(c *gin.Context, code int, msg string, data interface{}) { + c.JSON(http.StatusOK, gin.H{ "code": code, "msg": msg, "data": data, }) + logJson, _ := json.Marshal(gin.H{"code": code, "msg": msg, "data": data}) - recordLog(c, string(logJson)) + + requestLog(c, string(logJson)) } func AuthError(c *gin.Context, code int, msg string, data interface{}) { + c.JSON(http.StatusUnauthorized, gin.H{ "code": code, "msg": msg, "data": data, }) + logJson, _ := json.Marshal(gin.H{"code": code, "msg": msg, "data": data}) - recordLog(c, string(logJson)) + + requestLog(c, string(logJson)) } diff --git a/server/framework/utils/time.go b/server/framework/utils/time.go index c0a83b1..cc31230 100644 --- a/server/framework/utils/time.go +++ b/server/framework/utils/time.go @@ -1,3 +1,11 @@ +/** +#***************************************************************************** +# @file time.go +# @author MakerYang(https://www.makeryang.com) +# @statement 免费课程配套开源项目,任何形式收费均为盗版 +#***************************************************************************** +*/ + package Utils import ( diff --git a/server/main.go b/server/main.go index 6df4715..d8c14d3 100644 --- a/server/main.go +++ b/server/main.go @@ -1,14 +1,16 @@ /** - ****************************************************************************** - * @file main.go - * @author MakerYang - ****************************************************************************** - */ +#***************************************************************************** +# @file main.go +# @author MakerYang(https://www.makeryang.com) +# @statement 免费课程配套开源项目,任何形式收费均为盗版 +#***************************************************************************** +*/ package main import "Game/framework" +// 程序启动口 func main() { // 初始化核心框架 Framework.Init() diff --git a/tools/update.sh b/tools/update.sh index 3e4f7d5..16d4d22 100755 --- a/tools/update.sh +++ b/tools/update.sh @@ -6,6 +6,7 @@ set -e sudo cp -r ./tools/centos/* / # 复制后端服务到运行目录 +sudo rm -rf /data/wwwroot/server sudo cp -r ./server /data/wwwroot/ # 创建游戏引擎服务端运行目录