Compare commits
2 Commits
Author | SHA1 | Date | |
---|---|---|---|
30afd2cbe1 | |||
517d422993 |
31
services/center-api/client.go
Normal file
31
services/center-api/client.go
Normal file
@ -0,0 +1,31 @@
|
||||
package center_api
|
||||
|
||||
import (
|
||||
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk"
|
||||
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/requests"
|
||||
)
|
||||
|
||||
const (
|
||||
VERSION = "2020-11-16"
|
||||
)
|
||||
|
||||
var HOST = requests.Host{
|
||||
Default: "center-api",
|
||||
}
|
||||
|
||||
type Client struct {
|
||||
sdk.Client
|
||||
}
|
||||
|
||||
func NewClient() (client *Client, err error) {
|
||||
client = new(Client)
|
||||
err = client.Init()
|
||||
return
|
||||
}
|
||||
|
||||
// PackagingTaskCallback 打包任务回调
|
||||
func (c *Client) PackagingTaskCallback(req *PackagingTaskCallbackReq) (resp *PackagingTaskCallbackResp, err error) {
|
||||
resp = CreatePackagingTaskCallbackResp()
|
||||
err = c.DoAction(req, resp)
|
||||
return
|
||||
}
|
28
services/center-api/client_test.go
Normal file
28
services/center-api/client_test.go
Normal file
@ -0,0 +1,28 @@
|
||||
package center_api
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"testing"
|
||||
)
|
||||
|
||||
func TestPackagingTaskCallback(t *testing.T) {
|
||||
client, err := NewClient()
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
req := CreatePackagingTaskCallbackReq(Data{
|
||||
TaskId: "asdada120",
|
||||
Status: 1,
|
||||
Msg: "test",
|
||||
Url: "http://www.baidu.com",
|
||||
Md5: "adadsadasdasda",
|
||||
})
|
||||
|
||||
resp, err := client.PackagingTaskCallback(req)
|
||||
if err != nil {
|
||||
panic(err)
|
||||
}
|
||||
|
||||
fmt.Println(resp.StatusCode, resp.StatusMsg)
|
||||
}
|
64
services/center-api/packaging.go
Normal file
64
services/center-api/packaging.go
Normal file
@ -0,0 +1,64 @@
|
||||
package center_api
|
||||
|
||||
import (
|
||||
"crypto/md5"
|
||||
"encoding/hex"
|
||||
"fmt"
|
||||
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/requests"
|
||||
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/responses"
|
||||
)
|
||||
|
||||
type PackagingTaskCallbackReq struct {
|
||||
*requests.RpcRequest
|
||||
TaskId string `position:"Body" field:"task_id"`
|
||||
Status int `position:"Body" field:"status"`
|
||||
Msg string `position:"Body" field:"msg"`
|
||||
Url string `position:"Body" field:"url"`
|
||||
Md5 string `position:"Body" field:"md5"`
|
||||
Sign string `position:"Body" field:"sign"`
|
||||
Ts int64 `position:"Body" field:"ts"`
|
||||
}
|
||||
|
||||
type PackagingTaskCallbackResp struct {
|
||||
*responses.BaseResponse
|
||||
StatusCode int `json:"status_code"`
|
||||
StatusMsg string `json:"status_msg"`
|
||||
}
|
||||
|
||||
type Data struct {
|
||||
TaskId string `json:"task_id"`
|
||||
Status int `json:"status"`
|
||||
Msg string `json:"msg"`
|
||||
Url string `json:"url"`
|
||||
Md5 string `json:"md5"`
|
||||
}
|
||||
|
||||
func CreatePackagingTaskCallbackReq(data Data) *PackagingTaskCallbackReq {
|
||||
req := &PackagingTaskCallbackReq{
|
||||
RpcRequest: &requests.RpcRequest{},
|
||||
}
|
||||
|
||||
req.TaskId = data.TaskId
|
||||
req.Status = data.Status
|
||||
req.Msg = data.Msg
|
||||
req.Url = data.Url
|
||||
req.Md5 = data.Md5
|
||||
req.Ts = 1730357662
|
||||
|
||||
// sign=md5(ts+task_id+sign_key) 32位
|
||||
// 生成 MD5 哈希
|
||||
hash := md5.Sum([]byte(fmt.Sprintf("%d%s%s", req.Ts, req.TaskId, "xBPVBJ132asdUeJC3XjD7AnFWD2sbGH6pJC4654y89")))
|
||||
|
||||
// 将哈希结果转换为十六进制字符串
|
||||
hashString := hex.EncodeToString(hash[:])
|
||||
req.Sign = hashString
|
||||
req.InitWithApiInfo(HOST, VERSION, "/v1/packaging/task/callback")
|
||||
req.Method = requests.POST
|
||||
return req
|
||||
}
|
||||
|
||||
func CreatePackagingTaskCallbackResp() *PackagingTaskCallbackResp {
|
||||
return &PackagingTaskCallbackResp{
|
||||
BaseResponse: &responses.BaseResponse{},
|
||||
}
|
||||
}
|
@ -3,6 +3,7 @@ package oss
|
||||
import (
|
||||
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/requests"
|
||||
"golib.gaore.com/GaoreGo/gaore-common-sdk-go/sdk/responses"
|
||||
"time"
|
||||
)
|
||||
|
||||
type GetApkVersionRequest struct {
|
||||
@ -28,6 +29,7 @@ func CreateGetApkVersionRequest() (req *GetApkVersionRequest) {
|
||||
}
|
||||
req.InitWithApiInfo(HOST, VERSION, "/api/apk/version")
|
||||
req.Method = requests.POST
|
||||
req.SetReadTimeout(30 * time.Second)
|
||||
return
|
||||
}
|
||||
|
||||
|
@ -72,7 +72,7 @@ func TestCreateInitMultipartUpload(t *testing.T) {
|
||||
|
||||
func TestClient_GetApkVersion(t *testing.T) {
|
||||
req := CreateGetApkVersionRequest()
|
||||
req.Filepath = "51c68615b8d21f9b72b02f48c400cb87.zip"
|
||||
req.Filepath = "uploads/files/package/1f57ac9693f0593fc9073f366b1c1936.zip"
|
||||
client, err := NewClient()
|
||||
if err != nil {
|
||||
t.Error(err)
|
||||
|
Loading…
Reference in New Issue
Block a user