acme-mana/src/http.go
2024-12-27 16:50:51 +08:00

146 lines
3.1 KiB
Go

package src
//import (
// "acme-mana/src/crypto"
// "encoding/base64"
// "encoding/hex"
// "encoding/json"
// "github.com/gin-gonic/gin"
// "log"
// "os"
// "path"
// "path/filepath"
// "strconv"
//)
//
//func InitHttpServer(host string, port int) {
//
// log.Println("Start http server, Listen " + strconv.Itoa(port))
// h := gin.Default()
// h.GET("/api/v1/refresh", refreshCert)
// h.GET("/api/v1/cert", getCert)
// h.GET("/api/v1/domain/list", domainList)
// err := h.Run(host + ":" + strconv.Itoa(port))
// if err != nil {
// return
// }
//}
//
//func domainList(c *gin.Context) {
// token := getToken(c)
// domains := GetAppConfig().Domains
// data, err := json.Marshal(domains)
// if err != nil {
// log.Fatal(err)
// }
//
// encryptData := encryptResult(string(data), token)
// c.JSON(200, gin.H{
// "code": 200,
// "msg": "success",
// "data": encryptData,
// })
//}
//
//func getCert(c *gin.Context) {
// name := c.Query("name")
// token := getToken(c)
//
// dir := GetAppConfig().CertDir
// dir = filepath.Join(dir, name)
// _, err := os.Stat(dir)
// if os.IsNotExist(err) {
// c.JSON(200, gin.H{
// "code": 500,
// "msg": "Name does not exist.",
// })
// return
// }
// crtFilePath := path.Join(dir, CertFileName)
// crtContent, err := os.ReadFile(crtFilePath)
// if err != nil {
// c.JSON(200, gin.H{
// "code": 500,
// "msg": "Failed to read crt file.",
// })
// return
// }
// crt := string(crtContent)
//
// keyFilePath := path.Join(dir, KeyFileName)
// keyContent, err := os.ReadFile(keyFilePath)
// if err != nil {
// c.JSON(200, gin.H{
// "code": 500,
// "msg": "Failed to read key file.",
// })
// return
// }
// key := string(keyContent)
//
// certInfoFilePath := path.Join(dir, CertInfoFileName)
// certInfoContent, err := os.ReadFile(certInfoFilePath)
// if err != nil {
// c.JSON(200, gin.H{
// "code": 500,
// "msg": "Failed to read cert info file.",
// })
// return
// }
// certInfo := string(certInfoContent)
//
// data, err := json.Marshal(&DomainData{
// Fullchain: crt,
// Key: key,
// Info: certInfo,
// })
// if err != nil {
// log.Fatal(err)
// }
//
// encryptData := encryptResult(string(data), token)
// c.JSON(200, gin.H{
// "code": 200,
// "msg": "Success",
// "data": encryptData,
// })
//}
//
//func refreshCert(c *gin.Context) {
// name := c.Param("name")
// domain := GetAppConfig().FindDomain(name)
// if domain == nil {
// c.JSON(200, gin.H{
// "code": 500,
// "msg": "Name does not exist.",
// })
// return
// }
// Apply(*domain)
// c.JSON(200, gin.H{
// "code": 200,
// "msg": "Success",
// })
//}
//
//func getToken(c *gin.Context) (token string) {
// token = c.Query("token")
// token = decryptParam(token)
// return
//}
//
//func decryptParam(param string) string {
// priKey := GetAppConfig().Encrypt.PriKey
// tokenBytes, err := hex.DecodeString(param)
// tokenPlain, err := crypto.DecryptRSABase64(priKey, tokenBytes)
// if err != nil {
// log.Fatal(err)
// }
// return string(tokenPlain)
//}
//
//func encryptResult(content string, token string) string {
// result := crypto.EncryptAES([]byte(token), []byte(content))
// return base64.StdEncoding.EncodeToString(result)
//}