Files
ppgo_job/libs/http.go

72 lines
1.2 KiB
Go
Raw Normal View History

2018-08-09 18:47:42 +08:00
/************************************************************
** @Description: libs
** @Author: george hao
** @Date: 2018-08-09 13:29
2019-02-15 14:27:19 +08:00
** @Last Modified by: Bee
** @Last Modified time: 2019-02-15 13:50
2018-08-09 18:47:42 +08:00
*************************************************************/
package libs
import (
"github.com/pkg/errors"
"io/ioutil"
"strings"
"net/http"
2019-02-15 11:50:09 +08:00
"io"
2018-08-09 18:47:42 +08:00
)
func HttpGet(url string, param map[string]string) (string, error) {
2018-08-09 18:47:42 +08:00
if url == "" {
return "", errors.Errorf("url %s is not exists", url)
2018-08-09 18:47:42 +08:00
}
paramStr := ""
for k, v := range param {
paramStr += k + "=" + v + "&"
}
paramStr = strings.TrimRight(paramStr, "&")
if paramStr != "" {
2019-02-15 17:50:26 +08:00
if strings.Contains(url, "?") {
url += "&" + paramStr
} else {
url += "?" + paramStr
}
2018-08-09 18:47:42 +08:00
}
resp, err := http.Get(url)
if err != nil {
return "", err
2018-08-09 18:47:42 +08:00
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
return "", err
2018-08-09 18:47:42 +08:00
}
return string(body), nil
2018-08-09 18:47:42 +08:00
}
2019-02-15 11:50:09 +08:00
func HttpPost(url string, contentType string, body io.Reader) (string, error) {
2019-02-15 11:50:09 +08:00
resp, err := http.Post(url, contentType, body)
if err != nil {
return "", err
2019-02-15 11:50:09 +08:00
}
defer resp.Body.Close()
resBody, err := ioutil.ReadAll(resp.Body)
2019-02-15 11:50:09 +08:00
if err != nil {
return "", err
2019-02-15 11:50:09 +08:00
}
return string(resBody), nil
2019-02-15 11:50:09 +08:00
}