CloudrevePlus/pkg/vol/vol.go
2024-02-25 08:30:34 +08:00

47 lines
1.5 KiB
Go

package vol
import (
// "fmt"
"github.com/cloudreve/Cloudreve/v3/pkg/request"
// "net/http"
)
var ClientSecret = ""
const CRMSite = "https://pro.cloudreve.org/crm/api/vol/"
type Client interface {
// Sync VOL from CRM, return content (base64 encoded) and signature.
Sync() (string, string, error)
}
type VolClient struct {
secret string
client request.Client
}
func New(secret string) Client {
return &VolClient{secret: secret, client: request.NewClient()}
}
// func (c *VolClient) Sync() (string, string, error) {
// res, err := c.client.Request("GET", CRMSite+c.secret, nil).CheckHTTPResponse(http.StatusOK).DecodeResponse()
// if err != nil {
// return "", "", fmt.Errorf("failed to get VOL from CRM: %w", err)
// }
// if res.Code != 0 {
// return "", "", fmt.Errorf("CRM return error: %s", res.Msg)
// }
// vol := res.Data.(map[string]interface{})
// return vol["content"].(string), vol["signature"].(string), nil
// }
// Sync 同步Token <> <Content, Signature, Error>
func (c *VolClient) Sync() (string, string, error) {
return `eyJkb21haW4iOiJjbG91ZHJldmUub3JnIiwicHVyY2hhc2VfZGF0ZSI6MTY3MDMyOTI3OX0=`,
`UzVBwjfFNTU1bSQV8OTgbMvTdRO7FwNYyMdTu4/phmyUltc6MrluUItiK0v+Uq6yX05L4ZnhTlojVLgi3zXWNq0Tjo3zW3CffZVwj7FCrmG72PBuQp4hV3+b/eMpUbYcTTT9zEt2mneSpGJBOsxDgaf9isVzP+J+YwynPJy1UMa1ckYlc/rEExcxqZxH1tiSHfkyuelIENDiwiggOZl7J2opM5jbxH9oTiAhxl6MN1dbY6DH9bydTibcylSXoQASCse6P/i6JmEWPSRDY22Ofkw3cqTzQcxuMSJjYYVkdAHdeqoDYi4ywmAr1tAJnlDyNNU/KmLQzufgAWjdGKTPNA==`,
nil
}