From 985d4476989e808a2ab5aa0e4fed92a46f7ec0a6 Mon Sep 17 00:00:00 2001
From: liuxiaolong <liuxiaolong@aiotlink.com>
Date: 星期六, 17 十月 2020 15:23:13 +0800
Subject: [PATCH] findCluster use proto

---
 httpClient.go |   45 ++++++++++++++++++++++++++++++---------------
 1 files changed, 30 insertions(+), 15 deletions(-)

diff --git a/httpClient.go b/httpClient.go
index ea273ba..2cdca21 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
 		}
 	}
@@ -131,7 +147,6 @@
 		var err error
 		bodyJson, err = json.Marshal(body)
 		if err != nil {
-			log.Println(err)
 			return resultBytes, err
 		}
 	}

--
Gitblit v1.8.0