diff --git a/backend/database/redis.go b/backend/database/redis.go index e87b688f..c14b9a16 100644 --- a/backend/database/redis.go +++ b/backend/database/redis.go @@ -9,6 +9,7 @@ import ( "github.com/cenkalti/backoff/v4" "github.com/gomodule/redigo/redis" "github.com/spf13/viper" + "net/url" "runtime/debug" "strings" "time" @@ -167,17 +168,17 @@ func NewRedisPool() *redis.Pool { var address = viper.GetString("redis.address") var port = viper.GetString("redis.port") var database = viper.GetString("redis.database") - var password = viper.GetString("redis.password") + var password = url.QueryEscape(viper.GetString("redis.password")) - var url string + var redisUrl string if password == "" { - url = "redis://" + address + ":" + port + "/" + database + redisUrl = "redis://" + address + ":" + port + "/" + database } else { - url = "redis://x:" + password + "@" + address + ":" + port + "/" + database + redisUrl = "redis://x:" + password + "@" + address + ":" + port + "/" + database } return &redis.Pool{ Dial: func() (conn redis.Conn, e error) { - return redis.DialURL(url, + return redis.DialURL(redisUrl, redis.DialConnectTimeout(time.Second*10), redis.DialReadTimeout(time.Second*600), redis.DialWriteTimeout(time.Second*10), diff --git a/backend/routes/schedule.go b/backend/routes/schedule.go index 5da735e0..e58e17da 100644 --- a/backend/routes/schedule.go +++ b/backend/routes/schedule.go @@ -127,6 +127,8 @@ func PutSchedule(c *gin.Context) { return } + //成功后,则启动定时任务 + item.Enabled=true // 加入用户ID item.UserId = services.GetCurrentUserId(c) @@ -142,6 +144,7 @@ func PutSchedule(c *gin.Context) { return } + HandleSuccess(c) } diff --git a/backend/services/git.go b/backend/services/git.go index 8b7c1570..1ca81233 100644 --- a/backend/services/git.go +++ b/backend/services/git.go @@ -248,21 +248,11 @@ func SyncSpiderGit(s model.Spider) (err error) { } // 生成 URL - gitUrl := s.GitUrl + var gitUrl string if s.GitUsername != "" && s.GitPassword != "" { - u, err := url.Parse(s.GitUrl) - if err != nil { - SaveSpiderGitSyncError(s, err.Error()) - return err - } - gitUrl = fmt.Sprintf( - "%s://%s:%s@%s%s", - u.Scheme, - s.GitUsername, - s.GitPassword, - u.Hostname(), - u.Path, - ) + gitUrl = formatGitUrl(s.GitUrl, s.GitUsername, s.GitPassword) + } else { + gitUrl = s.GitUrl } // 创建 remote