| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- package router
- import (
- "ARKItems/configs"
- "ARKItems/entity/ark"
- "ARKItems/util"
- "github.com/gin-gonic/gin"
- "github.com/spf13/cast"
- )
- var ARKConfig ark.Config
- // ARKShopItems 商城物品列表
- var ARKShopItems map[string]ark.ShopItem
- var ARKShopDines map[string]ark.ShopDino
- var ARKShopBeacons map[string]ark.ShopBeacon
- var ARKShopExperiences map[string]ark.ShopExperience
- var ARKShopUnlockengram map[string]ark.ShopUnlockengram
- var ARKShopCommands map[string]ark.ShopCommand
- func init() {
- //加载配置文件
- ARKConfig, ARKShopItems, ARKShopDines, ARKShopBeacons, ARKShopExperiences, ARKShopUnlockengram, ARKShopCommands =
- util.LoadArkShopConfig(configs.ARKJsonFilePath)
- }
- func LoadRouter(router *gin.Engine) {
- router.POST("/login", Login)
- router.GET("/replay", Replay)
- router.Use(Calibration())
- group := router.Group("/ark")
- ARKConfigRouter(group)
- ArkItemRouter(group)
- ARKFileRouter(group)
- }
- func Replay(c *gin.Context) {
- configs.LoadServerConfiguration()
- //加载配置文件
- ARKConfig, ARKShopItems, ARKShopDines, ARKShopBeacons, ARKShopExperiences, ARKShopUnlockengram, ARKShopCommands =
- util.LoadArkShopConfig(configs.ARKJsonFilePath)
- }
- // Calibration 登录校验
- func Calibration() gin.HandlerFunc {
- return func(c *gin.Context) {
- header := c.GetHeader("auth-sign")
- if header == "" {
- c.JSON(200, CreateResultError(565, "用户未登录"))
- c.Abort()
- }
- token, err := util.ParseToken(header)
- if err != nil {
- c.JSON(200, CreateResultError(565, "token解析失败"))
- c.Abort()
- return
- }
- if !util.JudgmentUserInfo(token) {
- c.JSON(200, CreateResultError(565, "token过期,或无效"))
- c.Abort()
- return
- }
- }
- }
- func Login(c *gin.Context) {
- param := util.GetJsonAnyParam(c)
- username, _ := param("username")
- password, _ := param("password")
- if username == configs.Manager.Username && password == configs.Manager.Password {
- token, err := util.GenerateToken(cast.ToString(username))
- if err != nil {
- c.JSON(200, CreateResultError(500, "token生成失败"))
- return
- }
- c.JSON(200, CreateResultData(gin.H{
- "token": token,
- }))
- return
- }
- c.JSON(200, CreateResultError(500, "用户名或密码错误"))
- }
- //===============================================================
- func CreateResult() gin.H {
- return gin.H{
- "code": 200,
- "msg": "success",
- }
- }
- func CreateResultData(Data any) gin.H {
- return gin.H{
- "code": 200,
- "msg": "success",
- "data": Data,
- }
- }
- func CreateResultError(errCode int, errMsg string) gin.H {
- return gin.H{
- "code": errCode,
- "msg": errMsg,
- }
- }
|