requst_http.go 643 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. package utils
  2. import (
  3. "fmt"
  4. "io/ioutil"
  5. "net/http"
  6. )
  7. func HttpGet(url string, params map[string]string) (result []byte, err error) {
  8. req, err := http.NewRequest("GET", url, nil)
  9. if err != nil {
  10. fmt.Println(err.Error())
  11. return
  12. }
  13. q := req.URL.Query()
  14. for k, v := range params {
  15. q.Add(k, v)
  16. }
  17. req.URL.RawQuery = q.Encode()
  18. fmt.Println(req.URL.String())
  19. var resp *http.Response
  20. resp, err = http.DefaultClient.Do(req)
  21. if err != nil || resp == nil {
  22. return
  23. }
  24. output, err := ioutil.ReadAll(resp.Body)
  25. if err != nil {
  26. return
  27. }
  28. result = output
  29. defer func() {
  30. if resp != nil {
  31. resp.Body.Close()
  32. }
  33. }()
  34. return
  35. }