OSDN Git Service

add decodeProgramReq
authorChengcheng Zhang <943420582@qq.com>
Tue, 10 Sep 2019 10:35:35 +0000 (18:35 +0800)
committerChengcheng Zhang <943420582@qq.com>
Tue, 10 Sep 2019 10:35:35 +0000 (18:35 +0800)
swap/htlc.go
swap/trade_offer.go

index 61cd366..f37425e 100644 (file)
@@ -189,7 +189,11 @@ func decodeRawTransaction(rawTransaction string, contractValue AssetAmount) (str
 }
 
 func getRecipientPublicKey(contractControlProgram string) (string, error) {
-       payload := []byte(fmt.Sprintf(decodeProgramReq, contractControlProgram))
+       payload, err := json.Marshal(decodeProgramReq{Program: contractControlProgram})
+       if err != nil {
+               return "", err
+       }
+
        res := new(decodeProgramResp)
        if err := request(decodeProgramURL, payload, res); err != nil {
                return "", err
@@ -329,7 +333,11 @@ func signUnlockHTLCContractTransaction(account AccountInfo, preimage, recipientS
 }
 
 func DecodeHTLCProgram(program string) (*HTLCContractArgs, error) {
-       payload := []byte(fmt.Sprintf(decodeProgramReq, program))
+       payload, err := json.Marshal(decodeProgramReq{Program: program})
+       if err != nil {
+               return nil, err
+       }
+
        res := new(decodeProgramResp)
        if err := request(decodeProgramURL, payload, res); err != nil {
                return nil, err
index b4c3087..219feae 100644 (file)
@@ -294,12 +294,16 @@ type decodeProgramResp struct {
        Instructions string `json:"instructions"`
 }
 
-var decodeProgramReq = `{
-       "program": "%s"
-}`
+type decodeProgramReq struct {
+       Program string `json:"program"`
+}
 
 func DecodeProgram(program string) (*ContractArgs, error) {
-       payload := []byte(fmt.Sprintf(decodeProgramReq, program))
+       payload, err := json.Marshal(decodeProgramReq{Program: program})
+       if err != nil {
+               return nil, err
+       }
+
        res := new(decodeProgramResp)
        if err := request(decodeProgramURL, payload, res); err != nil {
                return nil, err