Commit
This commit is contained in:
35
pkg/utils/AuthToken.go
Normal file
35
pkg/utils/AuthToken.go
Normal file
@ -0,0 +1,35 @@
|
||||
package utils
|
||||
|
||||
import (
|
||||
"SafelineAPI/internal/app/safeLineApi"
|
||||
"io"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
func AuthSafeLine(url safeLineApi.URL) (safeLineApi.AuthTokenResp, int, error) {
|
||||
resp, err := Request(safeLineApi.GetTOKEN, url.AuthTokenUrl(), nil, nil)
|
||||
if err != nil {
|
||||
return safeLineApi.AuthTokenResp{}, 0, err
|
||||
}
|
||||
defer resp.Body.Close()
|
||||
data, _ := io.ReadAll(resp.Body)
|
||||
var authTokenResp safeLineApi.AuthTokenResp
|
||||
authTokenResp.Unmarshal(data)
|
||||
return authTokenResp, resp.StatusCode, nil
|
||||
}
|
||||
|
||||
func VerifyAuthToken(url safeLineApi.URL, token string) (safeLineApi.AuthTokenResp, int, error) {
|
||||
header := http.Header{
|
||||
"X-SLCE-API-TOKEN": []string{token},
|
||||
}
|
||||
|
||||
resp, err := Request(safeLineApi.GetTOKEN, url.AuthTokenUrl(), nil, header)
|
||||
if err != nil {
|
||||
return safeLineApi.AuthTokenResp{}, 0, err
|
||||
}
|
||||
defer resp.Body.Close()
|
||||
data, _ := io.ReadAll(resp.Body)
|
||||
var authTokenResp safeLineApi.AuthTokenResp
|
||||
authTokenResp.Unmarshal(data)
|
||||
return authTokenResp, resp.StatusCode, nil
|
||||
}
|
25
pkg/utils/List.go
Normal file
25
pkg/utils/List.go
Normal file
@ -0,0 +1,25 @@
|
||||
package utils
|
||||
|
||||
import (
|
||||
"SafelineAPI/internal/app/logger"
|
||||
"SafelineAPI/internal/app/safeLineApi"
|
||||
"io"
|
||||
"net/http"
|
||||
"os"
|
||||
)
|
||||
|
||||
func GetList(url *safeLineApi.URL, token string) safeLineApi.Nodes {
|
||||
header := http.Header{
|
||||
"X-SLCE-API-TOKEN": []string{token},
|
||||
}
|
||||
resp, err := Request(LIST, url.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 safeLineApi.ListResp
|
||||
listResp.Unmarshal(data)
|
||||
return listResp.Data.Nodes
|
||||
}
|
25
pkg/utils/Upsert.go
Normal file
25
pkg/utils/Upsert.go
Normal file
@ -0,0 +1,25 @@
|
||||
package utils
|
||||
|
||||
import (
|
||||
"SafelineAPI/internal/app/logger"
|
||||
"SafelineAPI/internal/app/safeLineApi"
|
||||
"io"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
func Upsert(url *safeLineApi.URL, token string, body io.Reader) safeLineApi.UpsertResp {
|
||||
header := http.Header{
|
||||
"X-SLCE-API-TOKEN": []string{token},
|
||||
"Content-Type": []string{"application/json"},
|
||||
}
|
||||
resp, err := Request(UPSERT, url.SSLCertUrl(), body, header)
|
||||
if err != nil {
|
||||
logger.Error.Printf("更新证书时发生错误: %s%s%s", logger.Red, err, logger.Reset)
|
||||
return safeLineApi.UpsertResp{}
|
||||
}
|
||||
defer resp.Body.Close()
|
||||
data, _ := io.ReadAll(resp.Body)
|
||||
var upsertResp safeLineApi.UpsertResp
|
||||
upsertResp.Unmarshal(data)
|
||||
return upsertResp
|
||||
}
|
8
pkg/utils/const.go
Normal file
8
pkg/utils/const.go
Normal file
@ -0,0 +1,8 @@
|
||||
package utils
|
||||
|
||||
const (
|
||||
LIST = "GET"
|
||||
UPSERT = "POST"
|
||||
DETAIL = "GET"
|
||||
DELETE = "DELETE"
|
||||
)
|
22
pkg/utils/request.go
Normal file
22
pkg/utils/request.go
Normal file
@ -0,0 +1,22 @@
|
||||
package utils
|
||||
|
||||
import (
|
||||
"crypto/tls"
|
||||
"io"
|
||||
"net/http"
|
||||
)
|
||||
|
||||
func Request(method, urlStr string, body io.Reader, header http.Header) (*http.Response, error) {
|
||||
req, _ := http.NewRequest(method, urlStr, body)
|
||||
req.Header = header
|
||||
client := http.Client{
|
||||
Transport: &http.Transport{
|
||||
TLSClientConfig: &tls.Config{InsecureSkipVerify: true},
|
||||
},
|
||||
}
|
||||
resp, err := client.Do(req)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
return resp, nil
|
||||
}
|
Reference in New Issue
Block a user