From ae858149bbf651fd0ef350a5ba00f379a21eb176 Mon Sep 17 00:00:00 2001 From: John Date: Tue, 26 Dec 2017 15:41:10 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B9=E8=BF=9Bghttp=20client=20request=20?= =?UTF-8?q?=E5=92=8Cserver=20response=E5=B0=81=E8=A3=85=E6=96=B9=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- g/net/ghttp/http_client_request.go | 14 +++++--------- g/net/ghttp/http_server_response.go | 8 ++++---- 2 files changed, 9 insertions(+), 13 deletions(-) diff --git a/g/net/ghttp/http_client_request.go b/g/net/ghttp/http_client_request.go index 8c032bd0e..a1b929b7a 100644 --- a/g/net/ghttp/http_client_request.go +++ b/g/net/ghttp/http_client_request.go @@ -161,20 +161,16 @@ func (r *ClientRequest) GetRequestMap(defaultMap map[string][]string) map[string // 获取原始请求输入字符串 -func (r *ClientRequest) GetRaw() string { - result, err := ioutil.ReadAll(r.Body) - if err != nil { - return "" - } else { - return string(result) - } +func (r *ClientRequest) GetRaw() []byte { + result, _ := ioutil.ReadAll(r.Body) + return result } // 获取原始请求输入字符串 func (r *ClientRequest) GetJson() *gjson.Json { data := r.GetRaw() - if data != "" { - if j, err := gjson.DecodeToJson([]byte(data)); err == nil { + if data != nil { + if j, err := gjson.DecodeToJson(data); err == nil { return j } } diff --git a/g/net/ghttp/http_server_response.go b/g/net/ghttp/http_server_response.go index 2f04765cd..11bdffb4f 100644 --- a/g/net/ghttp/http_server_response.go +++ b/g/net/ghttp/http_server_response.go @@ -15,9 +15,9 @@ type ServerResponse struct { // 返回的固定JSON数据结构 type ResponseJson struct { - Result int `json:"result"` - Message string `json:"message"` - Data interface{} `json:"data"` + Result int `json:"result"` // 标识消息状态 + Message string `json:"message"` // 消息使用string存储 + Data []byte `json:"data"` // 二进制数据(不管什么数据结构) } // 返回信息(byte) @@ -35,7 +35,7 @@ func (r *ServerResponse) WriteString(content string) { } // 返回固定格式的json -func (r *ServerResponse) WriteJson(result int, message string, data interface{}) error { +func (r *ServerResponse) WriteJson(result int, message string, data []byte) error { r.Header().Set("Content-Type", "application/json") r.bufmu.Lock() defer r.bufmu.Unlock()