From 0eeae77a0af3a9ca114408cac9667dc7bf8193fd Mon Sep 17 00:00:00 2001
From: liuxiaolong <liuxiaolong@aiotlink.com>
Date: 星期三, 09 六月 2021 16:26:07 +0800
Subject: [PATCH] FileStack add findAll
---
httpClient.go | 55 +++++++++++++++++++++++++++++++++++++++----------------
1 files changed, 39 insertions(+), 16 deletions(-)
diff --git a/httpClient.go b/httpClient.go
index ea273ba..b4a21c7 100644
--- a/httpClient.go
+++ b/httpClient.go
@@ -6,6 +6,8 @@
"io/ioutil"
"log"
"net/http"
+ "strings"
+ "github.com/ajg/form"
)
type HttpClient struct{}
@@ -15,7 +17,6 @@
var body []byte
request, err := http.NewRequest("GET", url, nil)
if err != nil {
- log.Println(err)
return body, err
}
// add params
@@ -26,9 +27,13 @@
}
request.URL.RawQuery = query.Encode()
}
- //add headers
+ // add headers
+ if headers != nil {
+ for key, val := range headers {
+ request.Header.Add(key, val)
+ }
+ }
client := &http.Client{}
- log.Printf("Go GET URL : %s \n", request.URL.String())
resp, err := client.Do(request)
if err != nil {
return body, err
@@ -44,20 +49,32 @@
//鍙戣捣POST璇锋眰
func (httpApi HttpClient) DoPostRequest(url string, contentType string, body map[string]interface{}, params map[string]string, headers map[string]string) ([]byte, error) {
var resultBytes []byte
- var bodyJson []byte
- if body != nil {
- var err error
- bodyJson, err = json.Marshal(body)
+ var request *http.Request
+ var err error
+ if contentType == CONTENT_TYPE_FORM || contentType == CONTENT_TYPE_MULFORM {
+ formData,err := form.EncodeToString(body)
+ if err !=nil {
+ return resultBytes,err
+ }
+ request, err = http.NewRequest("POST",url,strings.NewReader(formData))
+ if err !=nil {
+ return resultBytes,err
+ }
+ } else {
+ var bodyJson []byte
+ if body != nil {
+ var err error
+ bodyJson, err = json.Marshal(body)
+ if err != nil {
+ return resultBytes, err
+ }
+ }
+ request, err = http.NewRequest("POST", url, bytes.NewBuffer(bodyJson))
if err != nil {
- log.Println(err)
return resultBytes, err
}
}
- request, err := http.NewRequest("POST", url, bytes.NewBuffer(bodyJson))
- if err != nil {
- log.Println(err)
- return resultBytes, err
- }
+
request.Header.Set("Content-type", contentType)
//add params
q := request.URL.Query()
@@ -94,7 +111,6 @@
var err error
bodyJson, err = json.Marshal(body)
if err != nil {
- log.Println(err)
return resultBytes, err
}
}
@@ -124,14 +140,13 @@
}
//鏋勯�燿elete璇锋眰
-func (httpApi HttpClient) DoDeleteRequest(url string, contentType string, body map[string]interface{}, headers map[string]string) ([]byte, error) {
+func (httpApi HttpClient) DoDeleteRequest(url string, contentType string, body map[string]interface{}, params map[string]string, headers map[string]string) ([]byte, error) {
var resultBytes []byte
var bodyJson []byte
if body != nil {
var err error
bodyJson, err = json.Marshal(body)
if err != nil {
- log.Println(err)
return resultBytes, err
}
}
@@ -141,6 +156,14 @@
return resultBytes, err
}
request.Header.Set("Content-type", contentType)
+ //add params
+ q := request.URL.Query()
+ if params != nil {
+ for key, val := range params {
+ q.Add(key, val)
+ }
+ request.URL.RawQuery = q.Encode()
+ }
// add headers
if headers != nil {
for key, val := range headers {
--
Gitblit v1.8.0