You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

45 lines
925 B

package utils
import (
"errors"
"fmt"
"github.com/valyala/fasthttp"
)
func Get(url string) ([]byte, error) {
status, resp, err := fasthttp.Get(nil, url)
if err != nil {
return []byte{}, err
}
if status != fasthttp.StatusOK {
return []byte{}, errors.New(fmt.Sprintf("请求失败:%d", status))
}
return resp, nil
}
func PostJson(url string, JsonString string) ([]byte, error) {
req := fasthttp.AcquireRequest()
resp := fasthttp.AcquireResponse()
defer func() {
// 用完需要释放资源
fasthttp.ReleaseResponse(resp)
fasthttp.ReleaseRequest(req)
}()
// 默认是application/x-www-form-urlencoded
req.Header.SetContentType("application/json")
req.Header.SetMethod("POST")
req.SetRequestURI(url)
requestBody := []byte(JsonString)
req.SetBody(requestBody)
if err := fasthttp.Do(req, resp); err != nil {
return []byte{}, err
}
b := resp.Body()
fmt.Println(string(b))
return b, nil
}