ws_bucket/test/common.go
2019-03-09 09:20:51 -05:00

64 lines
1.2 KiB
Go

package test
import (
"bytes"
"encoding/json"
"fmt"
"github.com/simon987/ws_bucket/api"
"io/ioutil"
"net/http"
)
func Post(path string, x interface{}) *http.Response {
s := http.Client{}
body, err := json.Marshal(x)
buf := bytes.NewBuffer(body)
req, err := http.NewRequest("POST", "http://"+api.GetServerAddress()+path, buf)
handleErr(err)
//ts := time.Now().Format(time.RFC1123)
//
//mac := hmac.New(crypto.SHA256.New, worker.Secret)
//mac.Write(body)
//mac.Write([]byte(ts))
//sig := hex.EncodeToString(mac.Sum(nil))
//
//req.Header.Add("X-Worker-Id", strconv.FormatInt(worker.Id, 10))
//req.Header.Add("X-Signature", sig)
//req.Header.Add("Timestamp", ts)
r, err := s.Do(req)
handleErr(err)
return r
}
func Get(path string, token string) *http.Response {
s := http.Client{}
req, err := http.NewRequest("GET", "http://"+api.GetServerAddress()+path, nil)
handleErr(err)
req.Header.Set("X-Upload-Token", token)
r, err := s.Do(req)
return r
}
func UnmarshalResponse(r *http.Response, result interface{}) {
data, err := ioutil.ReadAll(r.Body)
fmt.Println(string(data))
err = json.Unmarshal(data, result)
handleErr(err)
}
func handleErr(err error) {
if err != nil {
panic(err)
}
}