mirror of
https://github.com/yangjian102621/geekai.git
synced 2025-09-21 02:36:39 +08:00
use proxy for downloading discord images
This commit is contained in:
parent
31828a3336
commit
8b3b0139b0
@ -17,6 +17,7 @@ import (
|
|||||||
"geekai/store"
|
"geekai/store"
|
||||||
"geekai/store/model"
|
"geekai/store/model"
|
||||||
"github.com/go-redis/redis/v8"
|
"github.com/go-redis/redis/v8"
|
||||||
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"gorm.io/gorm"
|
"gorm.io/gorm"
|
||||||
@ -118,17 +119,23 @@ func (p *ServicePool) DownloadImages() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
logger.Infof("try to download image: %s", v.OrgURL)
|
logger.Infof("try to download image: %s", v.OrgURL)
|
||||||
var imgURL string
|
mjService := p.getService(v.ChannelId)
|
||||||
var err error
|
if mjService == nil {
|
||||||
if servicePlus := p.getService(v.ChannelId); servicePlus != nil {
|
logger.Errorf("Invalid task: %+v", v)
|
||||||
task, _ := servicePlus.Client.QueryTask(v.TaskId)
|
continue
|
||||||
if len(task.Buttons) > 0 {
|
|
||||||
v.Hash = GetImageHash(task.Buttons[0].CustomId)
|
|
||||||
}
|
|
||||||
imgURL, err = p.uploaderManager.GetUploadHandler().PutImg(v.OrgURL, false)
|
|
||||||
} else {
|
|
||||||
imgURL, err = p.uploaderManager.GetUploadHandler().PutImg(v.OrgURL, true)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
task, _ := mjService.Client.QueryTask(v.TaskId)
|
||||||
|
if len(task.Buttons) > 0 {
|
||||||
|
v.Hash = GetImageHash(task.Buttons[0].CustomId)
|
||||||
|
}
|
||||||
|
// 如果是返回的是 discord 图片地址,则使用代理下载
|
||||||
|
proxy := false
|
||||||
|
if strings.HasPrefix(v.OrgURL, "https://cdn.discordapp.com") {
|
||||||
|
proxy = true
|
||||||
|
}
|
||||||
|
imgURL, err := p.uploaderManager.GetUploadHandler().PutImg(v.OrgURL, proxy)
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Errorf("error with download image %s, %v", v.OrgURL, err)
|
logger.Errorf("error with download image %s, %v", v.OrgURL, err)
|
||||||
continue
|
continue
|
||||||
|
Loading…
Reference in New Issue
Block a user