From eace561f73075e2f72d8f8f981dc2dedf052ff43 Mon Sep 17 00:00:00 2001 From: fumiama Date: Tue, 9 Nov 2021 13:09:11 +0800 Subject: [PATCH] =?UTF-8?q?=E2=9C=8F=EF=B8=8F=20=20=E4=BF=AE=E5=A4=8D=20fo?= =?UTF-8?q?rtune=20=E6=97=A0=E6=B3=95=E4=B8=8B=E8=BD=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- plugin_fortune/fortune.go | 6 +++--- utils/file/dl.go | 18 ++++++++++++++++-- 2 files changed, 19 insertions(+), 5 deletions(-) diff --git a/plugin_fortune/fortune.go b/plugin_fortune/fortune.go index 04846e63..894a8403 100644 --- a/plugin_fortune/fortune.go +++ b/plugin_fortune/fortune.go @@ -83,7 +83,7 @@ func init() { dlmu.Lock() if file.IsNotExist(mikuji) { ctx.SendChain(message.Text("正在下载签文文件,请稍后...")) - err := file.DownloadTo(site+"运势签文.json", mikuji) + err := file.DownloadTo(site+"运势签文.json", mikuji, false) if err != nil { ctx.SendChain(message.Text("ERROR: ", err)) return @@ -98,7 +98,7 @@ func init() { dlmu.Lock() if file.IsNotExist(ttf) { ctx.SendChain(message.Text("正在下载字体文件,请稍后...")) - err := file.DownloadTo(site+"sakura.ttf", ttf) + err := file.DownloadTo(site+"sakura.ttf", ttf, false) if err != nil { ctx.SendChain(message.Text("ERROR: ", err)) return @@ -126,7 +126,7 @@ func init() { ctx.SendChain(message.Text("正在下载背景图片,请稍后...")) zipfile := kind + ".zip" zipcache := base + zipfile - err := file.DownloadTo(site+zipfile, zipcache) + err := file.DownloadTo(site+zipfile, zipcache, false) if err != nil { ctx.SendChain(message.Text("ERROR: ", err)) return diff --git a/utils/file/dl.go b/utils/file/dl.go index 1caea7e6..b555dc9d 100644 --- a/utils/file/dl.go +++ b/utils/file/dl.go @@ -2,14 +2,28 @@ package file import ( + "crypto/tls" "io" "net/http" "os" ) +var ( + tr = &http.Transport{ + TLSClientConfig: &tls.Config{InsecureSkipVerify: true}, + } + nochkcrtcli = &http.Client{Transport: tr} +) + // DownloadTo 下载到路径 -func DownloadTo(url, file string) error { - resp, err := http.Get(url) +func DownloadTo(url, file string, chkcrt bool) error { + var resp *http.Response + var err error + if chkcrt { + resp, err = http.Get(url) + } else { + resp, err = nochkcrtcli.Get(url) + } if err == nil { var f *os.File f, err = os.Create(file)