change type all
This commit is contained in:
@@ -22,16 +22,20 @@ func setupRouter() {
|
||||
router.GET("/clash/proxies", func(c *gin.Context) {
|
||||
proxyTypes := c.DefaultQuery("type", "")
|
||||
text := ""
|
||||
if proxyTypes == "all" || proxyTypes == "" {
|
||||
if proxyTypes == "" {
|
||||
text = cache.GetString("clashproxies")
|
||||
if text == "" {
|
||||
proxies := cache.GetProxies()
|
||||
proxies := cache.GetProxies("proxies")
|
||||
clash := provider.Clash{Proxies: proxies}
|
||||
text = clash.Provide()
|
||||
cache.SetString("clashproxies", text)
|
||||
}
|
||||
} else if proxyTypes == "all" {
|
||||
proxies := cache.GetProxies("allproxies")
|
||||
clash := provider.Clash{Proxies: proxies, Types: proxyTypes}
|
||||
text = clash.Provide()
|
||||
} else {
|
||||
proxies := cache.GetProxies()
|
||||
proxies := cache.GetProxies("proxies")
|
||||
clash := provider.Clash{Proxies: proxies, Types: proxyTypes}
|
||||
text = clash.Provide()
|
||||
}
|
||||
@@ -40,7 +44,7 @@ func setupRouter() {
|
||||
router.GET("/surge/proxies", func(c *gin.Context) {
|
||||
text := cache.GetString("surgeproxies")
|
||||
if text == "" {
|
||||
proxies := cache.GetProxies()
|
||||
proxies := cache.GetProxies("proxies")
|
||||
surge := provider.Surge{Proxies: proxies}
|
||||
text = surge.Provide()
|
||||
cache.SetString("surgeproxies", text)
|
||||
|
||||
8
app/cache/cache.go
vendored
8
app/cache/cache.go
vendored
@@ -10,8 +10,8 @@ import (
|
||||
|
||||
var c = cache.New(cache.NoExpiration, 10*time.Minute)
|
||||
|
||||
func GetProxies() proxy.ProxyList {
|
||||
result, found := c.Get("proxies")
|
||||
func GetProxies(key string) proxy.ProxyList {
|
||||
result, found := c.Get(key)
|
||||
if found {
|
||||
log.Println(len(result.(proxy.ProxyList)))
|
||||
return result.(proxy.ProxyList)
|
||||
@@ -20,8 +20,8 @@ func GetProxies() proxy.ProxyList {
|
||||
return nil
|
||||
}
|
||||
|
||||
func SetProxies(proxies proxy.ProxyList) {
|
||||
c.Set("proxies", proxies, cache.NoExpiration)
|
||||
func SetProxies(key string, proxies proxy.ProxyList) {
|
||||
c.Set(key, proxies, cache.NoExpiration)
|
||||
}
|
||||
|
||||
func SetString(key, value string) {
|
||||
|
||||
@@ -26,7 +26,7 @@ func CrawlGo() {
|
||||
wg.Add(1)
|
||||
go g.Get2Chan(pc, wg)
|
||||
}
|
||||
proxies := cache.GetProxies()
|
||||
proxies := cache.GetProxies("proxies")
|
||||
go func() {
|
||||
wg.Wait()
|
||||
close(pc)
|
||||
@@ -36,15 +36,20 @@ func CrawlGo() {
|
||||
proxies = append(proxies, node)
|
||||
}
|
||||
}
|
||||
// 节点去重
|
||||
proxies = proxies.Deduplication()
|
||||
log.Println("CrawlGo node count:", len(proxies))
|
||||
proxies.NameAddCounrty().Sort().NameAddIndex()
|
||||
cache.SetProxies("allproxies", proxies)
|
||||
|
||||
// 可用性检测
|
||||
proxies = proxy.CleanProxies(provider.Clash{Proxies: proxies}.CleanProxies())
|
||||
log.Println("CrawlGo clash useable node count:", len(proxies))
|
||||
|
||||
// 排序和重命名
|
||||
proxies.NameAddCounrty().Sort().NameAddIndex()
|
||||
cache.SetProxies("proxies", proxies)
|
||||
|
||||
cache.SetProxies(proxies)
|
||||
cache.SetString("clashproxies", provider.Clash{Proxies: proxies}.Provide())
|
||||
cache.SetString("surgeproxies", provider.Surge{Proxies: proxies}.Provide())
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user