| 196 | |
| 197 | } |
| 198 | func Post(url string, data interface{}, proxy string, headers Headers) ([]byte, error) { |
| 199 | http := New() |
| 200 | http.Post(url, data) |
| 201 | for k, v := range headers { |
| 202 | http.SetHeader(k, v) |
| 203 | } |
| 204 | if proxy != "" { |
| 205 | http.SetProxy(proxy) |
| 206 | } |
| 207 | http.IgnoreSSL() |
| 208 | if strings.HasPrefix(data.(string), "{") == false { |
| 209 | http.SetContentType("form") |
| 210 | } |
| 211 | http.Execute() |
| 212 | if http.HttpResponse.Header.Get("Content-Encoding") == "gzip" { |
| 213 | reader, err := gzip.NewReader(http.HttpResponse.Body) |
| 214 | if err != nil { |
| 215 | return nil, err |
| 216 | } |
| 217 | defer reader.Close() |
| 218 | return ioutil.ReadAll(reader) |
| 219 | } |
| 220 | return http.Byte() |
| 221 | } |