From 233a5e3ea666d88a1b423a0bbc768bbdf151ecf6 Mon Sep 17 00:00:00 2001 From: aozhiwei Date: Mon, 24 Jun 2024 13:35:33 +0800 Subject: [PATCH] 1 --- bin/marketserver/config/config.json | 3 +- .../marketserver/api/v1/shopcart/shopcart.go | 92 ++++++++++--------- server/marketserver/middleware/jwtauth.go | 6 +- 3 files changed, 52 insertions(+), 49 deletions(-) diff --git a/bin/marketserver/config/config.json b/bin/marketserver/config/config.json index de800383..6c6a00ff 100644 --- a/bin/marketserver/config/config.json +++ b/bin/marketserver/config/config.json @@ -1,3 +1,4 @@ { - "gameapi_url": "https://game2006api-test.kingsome.cn" + "gameapi_url": "https://game2006api-test.kingsome.cn", + "jwks_uri": "https://auth.immutable.com/.well-known/jwks.json" } diff --git a/server/marketserver/api/v1/shopcart/shopcart.go b/server/marketserver/api/v1/shopcart/shopcart.go index 2f2a53b4..2d6984cb 100644 --- a/server/marketserver/api/v1/shopcart/shopcart.go +++ b/server/marketserver/api/v1/shopcart/shopcart.go @@ -39,54 +39,56 @@ func (this *ShopCartApi) List(c *gin.Context) { c.JSON(200, rspObj) return } - cartDb := common.NewShopCart() nfts := []*common.NftDto{} - if q5.DecodeJson(ds.GetByName("data"), cartDb) == nil { - q5.Sort[common.ShopCartGoods](cartDb.Goods, - func (a *common.ShopCartGoods, b *common.ShopCartGoods) bool{ - return a.SortIdx < b.SortIdx - }) - dirty := false - newGoods := []*common.ShopCartGoods{} - for _, val := range cartDb.Goods { - var err1 error - f5.GetGoStyleDb().OrmSelectOne( - constant.BCNFT_DB, - "t_order", - [][]string{ - {"net_id", q5.ToString(val.NetId)}, - {"contract_address", q5.ToString(val.ContractAddress)}, - {"token_id", q5.ToString(val.TokenId)}, - {"status", jccommon.ORDER_STATUS_ACTIVE}, - }, - func (err error, ds* f5.DataSet) { - err1 = err - if err == nil { - if ds.Next() { - p := new(common.NftDto) - p.NetId = q5.ToInt32(ds.GetByName("net_id")) - p.ContractAddress = ds.GetByName("contract_address") - p.TokenId = ds.GetByName("token_id") - p.Payload = map[string]interface{}{} - q5.DecodeJson(ds.GetByName("event_data"), &p.Payload) - q5.AppendSlice(&nfts, p) - q5.AppendSlice(&newGoods, val) - } else { - dirty = true - val.Flag = 1 - } - } + if ds.Next() { + cartDb := common.NewShopCart() + if q5.DecodeJson(ds.GetByName("data"), cartDb) == nil { + q5.Sort[common.ShopCartGoods](cartDb.Goods, + func (a *common.ShopCartGoods, b *common.ShopCartGoods) bool{ + return a.SortIdx < b.SortIdx }) - if err1 != nil { - rspObj.ErrCode = 500 - rspObj.ErrMsg = "server internal error" - c.JSON(200, rspObj) - return + dirty := false + newGoods := []*common.ShopCartGoods{} + for _, val := range cartDb.Goods { + var err1 error + f5.GetGoStyleDb().OrmSelectOne( + constant.BCNFT_DB, + "t_order", + [][]string{ + {"net_id", q5.ToString(val.NetId)}, + {"contract_address", q5.ToString(val.ContractAddress)}, + {"token_id", q5.ToString(val.TokenId)}, + {"status", jccommon.ORDER_STATUS_ACTIVE}, + }, + func (err error, ds* f5.DataSet) { + err1 = err + if err == nil { + if ds.Next() { + p := new(common.NftDto) + p.NetId = q5.ToInt32(ds.GetByName("net_id")) + p.ContractAddress = ds.GetByName("contract_address") + p.TokenId = ds.GetByName("token_id") + p.Payload = map[string]interface{}{} + q5.DecodeJson(ds.GetByName("event_data"), &p.Payload) + q5.AppendSlice(&nfts, p) + q5.AppendSlice(&newGoods, val) + } else { + dirty = true + val.Flag = 1 + } + } + }) + if err1 != nil { + rspObj.ErrCode = 500 + rspObj.ErrMsg = "server internal error" + c.JSON(200, rspObj) + return + } + }//end for goods + if dirty { + cartDb.Goods = newGoods + this.save(openId, cartDb) } - }//end for goods - if dirty { - cartDb.Goods = newGoods - this.save(openId, cartDb) } } GetCacheMgr().GetNfts(nfts) diff --git a/server/marketserver/middleware/jwtauth.go b/server/marketserver/middleware/jwtauth.go index 66d1d781..b330ef2a 100644 --- a/server/marketserver/middleware/jwtauth.go +++ b/server/marketserver/middleware/jwtauth.go @@ -14,8 +14,8 @@ import ( func JwtAuth(c *gin.Context) { tokenHeader := c.Request.Header.Get("Authorization") jwtToken := "" - if len(tokenHeader) < 8 { - jwtToken = tokenHeader[8:len(tokenHeader)] + if len(tokenHeader) > 8 { + jwtToken = tokenHeader[7:len(tokenHeader)] } params := map[string]string{ @@ -62,7 +62,7 @@ func JwtAuth(c *gin.Context) { } rspObj.ErrCode = q5.SafeToInt32(jsonRspObj.ErrCode) rspObj.ErrMsg = jsonRspObj.ErrMsg - if rspObj.ErrCode != 0 { + if q5.SafeToInt32(rspObj.ErrCode) != 0 { rspObj.ErrCode = 501 rspObj.ErrMsg = "jwt error" c.JSON(200, rspObj)