From cfeba2dea02c1de54cde6c95f2a3f46c121d34aa Mon Sep 17 00:00:00 2001 From: liuxiaolong <736321739@qq.com> Date: 星期五, 16 八月 2019 15:16:14 +0800 Subject: [PATCH] dev add publicDomain --- middlewares/auth/auth.go | 42 +++++++++++++++++++++++++++++++++++------- 1 files changed, 35 insertions(+), 7 deletions(-) diff --git a/middlewares/auth/auth.go b/middlewares/auth/auth.go index 449ae51..831ba8a 100644 --- a/middlewares/auth/auth.go +++ b/middlewares/auth/auth.go @@ -3,9 +3,10 @@ import ( "github.com/gin-gonic/gin" "net/http" + "regexp" "strings" - "webserver/extend/code" - "webserver/extend/util" + "webserver/extend/config" + "webserver/extend/logger" ) const ( @@ -28,13 +29,40 @@ func AuthHandler() gin.HandlerFunc { return func(c *gin.Context) { urlPath := c.Request.URL.Path + if strings.Contains(urlPath,"/data/api-v") && !strings.Contains(urlPath,"login"){ - jwtDriver :=NewJwtAuthDriver() - if !jwtDriver.Check(c) { - util.ResponseFormat(c,code.TokenNotFound,"灏氭湭鐧诲綍锛岃鐧诲綍") - c.Abort() - } + //jwtDriver :=NewJwtAuthDriver() + //if !jwtDriver.Check(c) { + // util.ResponseFormat(c,code.TokenNotFound,"灏氭湭鐧诲綍锛岃鐧诲綍") + // c.Abort() + //} c.Next() + } else if strings.HasPrefix(urlPath,"/httpImage") { + host := c.Request.Host + logger.Debug("host:", host) + + imgUrl := config.Server.ImageUrl + + domain := config.Server.PublicDomain + domainReg := regexp.MustCompile(``+domain+``) + if domainReg.MatchString(host) {//鍩熷悕璁块棶 + imgUrl = domain + } + + urlPath = strings.Replace(urlPath, "/httpImage", "", -1) + idx := strings.Index(urlPath, ":") + tmpPath := urlPath + if idx >-1 {//璺緞涓寘鍚湁绔彛,鍙栫鍙d互鍚庤矾寰� + tmpPath = urlPath[idx:] + imgIndx := strings.LastIndex(imgUrl, ":") + if imgIndx > -1 { + imgUrl = imgUrl[:imgIndx] + } + } + logger.Debug("imgUrl+tmpPath:", imgUrl+tmpPath) + c.Header("Access-Control-Allow-Origin","*") + c.Redirect(http.StatusMovedPermanently, imgUrl+tmpPath) + return } else { c.Next() } -- Gitblit v1.8.0