Beego控制器发送GET/POST请求并获取返回信息

//发送GET请求 //url:请求地址 //response:请求返回的内容 func Get(url string) (response string) { client := http.Client{Timeout: 5 * time.Second} resp, error := client.Get(url) defer resp.Body.Close() if error != nil { panic(error) } var buffer [512]byte result := bytes.NewBuffer(nil) for { n, err := resp.Body.Read(buffer[0:]) result.Write(buffer[0:n]) if err != nil && err == io.EOF { break } else if err != nil { panic(err) } } response = result.String() return }//发送POST请求 //url:请求地址data:POST请求提交的数据contentType:请求体格式,如:application/json //content:请求返回的内容 func Post(url string, data interface{}, contentType string) (content string) { jsonStr, _ := json.Marshal(data) req, err := http.NewRequest("POST", url, bytes.NewBuffer(jsonStr)) req.Header.Add("content-type", contentType) if err != nil { panic(err) } defer req.Body.Close() client := &http.Client{Timeout: 5 * time.Second} resp, error := client.Do(req) if error != nil { panic(error) } defer resp.Body.Close() result, _ := ioutil.ReadAll(resp.Body) content = string(result) return }

    推荐阅读