|
@@ -1,101 +0,0 @@
|
|
|
-package util
|
|
|
-
|
|
|
-import (
|
|
|
- "bytes"
|
|
|
- "encoding/json"
|
|
|
- "io"
|
|
|
- "net/http"
|
|
|
- "net/url"
|
|
|
-)
|
|
|
-
|
|
|
-func HttpGet(url string) (string, error) {
|
|
|
- // 创建一个HTTP客户端
|
|
|
- client := &http.Client{}
|
|
|
-
|
|
|
- // 创建一个GET请求
|
|
|
- req, err := http.NewRequest("GET", url, nil)
|
|
|
- if err != nil {
|
|
|
- return "", err
|
|
|
- }
|
|
|
-
|
|
|
- // 发送请求并获取响应
|
|
|
- resp, err := client.Do(req)
|
|
|
- if err != nil {
|
|
|
- return "", err
|
|
|
- }
|
|
|
- defer func(Body io.ReadCloser) {
|
|
|
- err := Body.Close()
|
|
|
- if err != nil {
|
|
|
-
|
|
|
- }
|
|
|
- }(resp.Body)
|
|
|
-
|
|
|
- // 读取响应的内容
|
|
|
- body, err := io.ReadAll(resp.Body)
|
|
|
- if err != nil {
|
|
|
- return "", err
|
|
|
- }
|
|
|
- return string(body), nil
|
|
|
-}
|
|
|
-func HttpPostJsonResponseString(url string, params map[string]string) (string, error) {
|
|
|
- jsonData, err := json.Marshal(params)
|
|
|
- if err != nil {
|
|
|
- return "", err
|
|
|
- }
|
|
|
- resp, err := http.Post(url, "application/json", bytes.NewBuffer(jsonData))
|
|
|
- if err != nil {
|
|
|
- return "", err
|
|
|
- }
|
|
|
- defer func(Body io.ReadCloser) {
|
|
|
- err := Body.Close()
|
|
|
- if err != nil {
|
|
|
- }
|
|
|
- }(resp.Body)
|
|
|
- body, err := io.ReadAll(resp.Body)
|
|
|
- if err != nil {
|
|
|
- return "", err
|
|
|
- }
|
|
|
- return string(body), nil
|
|
|
-}
|
|
|
-
|
|
|
-func HttpGetStringAddHeadersResponseString(baseUrl string, headers map[string]string, params map[string]string) (string, error) {
|
|
|
-
|
|
|
- // 将参数编码到URL中
|
|
|
- u, _ := url.Parse(baseUrl)
|
|
|
- q := u.Query()
|
|
|
- for key, value := range params {
|
|
|
- q.Add(key, value)
|
|
|
- }
|
|
|
- u.RawQuery = q.Encode()
|
|
|
-
|
|
|
- // 创建请求
|
|
|
- req, err := http.NewRequest("GET", u.String(), nil)
|
|
|
- if err != nil {
|
|
|
- return "", err
|
|
|
- }
|
|
|
-
|
|
|
- // 设置请求头
|
|
|
- for key, value := range headers {
|
|
|
- req.Header.Set(key, value)
|
|
|
- }
|
|
|
-
|
|
|
- // 发送请求
|
|
|
- client := &http.Client{}
|
|
|
- resp, err := client.Do(req)
|
|
|
- if err != nil {
|
|
|
- return "", err
|
|
|
- }
|
|
|
-
|
|
|
- // 读取响应体
|
|
|
- body, err := io.ReadAll(resp.Body)
|
|
|
- if err != nil {
|
|
|
- return "", err
|
|
|
- }
|
|
|
- err = resp.Body.Close()
|
|
|
- if err != nil {
|
|
|
- return "", err
|
|
|
- }
|
|
|
- result := string(body)
|
|
|
- //log.GlobalLogger.Info("发送http请求,请求路径=", baseUrl, ",请求头=", headers, "请求参数=", params, "请求结果=", result)
|
|
|
- return result, nil
|
|
|
-}
|