迁移并重构项目,优化了执行流程

This commit is contained in:
2025-10-31 15:43:25 +08:00
commit 35bcd62ad5
29 changed files with 1312 additions and 0 deletions

View File

@ -0,0 +1,52 @@
package SafeLine
import (
"SafeLine-Acme/internal/app/logger"
"SafeLine-Acme/pkg/utils"
"bytes"
"io"
"net/http"
"os"
)
func (safeLine *Object) GetCertNodes() []Nodes {
header := http.Header{
"X-SLCE-API-TOKEN": []string{safeLine.ApiToken},
}
resp, err := utils.Request("GET", safeLine.SSLCertUrl(), nil, header)
if err != nil {
logger.Error.Printf("请求接口 %s/api/open/cert%s 时发生错误: %s%s%s", logger.Cyan, logger.Reset, logger.Red, err, logger.Reset)
os.Exit(0)
}
defer resp.Body.Close()
data, _ := io.ReadAll(resp.Body)
var listResp ListResp
listResp.Unmarshal(data)
return listResp.Data.Nodes
}
func (safeLine *Object) UpdateCert(email string, Certificate, PrivateKey []byte, cert Nodes) ([]string, []string) {
header := http.Header{
"X-SLCE-API-TOKEN": []string{safeLine.ApiToken},
"Content-Type": []string{"application/json"},
}
var updateReq UpdateReq
updateReq.Create(Certificate, PrivateKey, cert.Domains, email, cert.Id, cert.Type)
resp, err := utils.Request("POST", safeLine.SSLCertUrl(), bytes.NewReader(updateReq.Marshal()), header)
if err != nil {
logger.Error.Printf("更新证书时发生错误: %s%s%s", logger.Red, err, logger.Reset)
return nil, nil
}
defer resp.Body.Close()
data, _ := io.ReadAll(resp.Body)
var updateResp UpdateResp
updateResp.Unmarshal(data)
if updateResp.Msg != "" {
logger.Error.Printf("域名 %s%s%s 证书更新失败: %s%s%s", logger.Cyan, cert.Domains, logger.Reset, logger.Red, updateResp.Msg, logger.Reset)
return nil, cert.Domains
}
logger.Success.Printf("域名 %s%s%s 证书更新成功!", logger.Cyan, cert.Domains, logger.Reset)
return cert.Domains, nil
}