美文网首页
golang http 客户端

golang http 客户端

作者: Newzer | 来源:发表于2022-08-26 15:40 被阅读0次

http 发送post 请求, 发送数据格式用application/json,
发送参数必须写到buffer 缓冲器里,返回数据也从从缓冲区拿数据
url := "http://127.0.0.1:8084/api/silent/giftCodeAdd"
body := map[string]interface{}{"activity_id":params.ActivityId, "count":params.Count}
byteData, err := json.Marshal(body)

if err != nil {
    ret := map[string]string{"code": "-2", "msg": "服务器错误"}
    appG.Response(e.INVALID_PARAMS, ret)
    return
}

reader := bytes.NewBuffer(byteData)
response,err := http.Post(url, "application/json; charset=utf-8", reader)
defer response.Body.Close()
logging.Info("byteData:", byteData)
logging.Info("send to url:", url, "body:", body, "response:", response, "err:", err)
if err != nil{
    ret := map[string]string{"code": "-2", "msg": "服务器错误"}
    appG.Response(e.INVALID_PARAMS, ret)
    return
}

if response.StatusCode == http.StatusOK {
    appG.Response(e.SUCCESS,"success")
    return
}

resbody := response.Body
logging.Info("response body is", resbody)

content, err := ioutil.ReadAll(resbody)
if err != nil {
    ret := map[string]string{"code": "-2", "msg": "服务器错误"}
    appG.Response(e.INVALID_PARAMS, ret)
    return
}
var m  map[string]interface{}
err = json.Unmarshal(content, &m)
if err != nil {
    ret := map[string]string{"code": "-2", "msg": "服务器错误"}
    appG.Response(e.INVALID_PARAMS, ret)
    return
}
logging.Info("m:", m)
appG.Response(e.INVALID_PARAMS, m)

相关文章

  • golang http 客户端

    http 发送post 请求, 发送数据格式用application/json,发送参数必须写到buffer 缓冲...

  • GO CURL

    Golang内置net/http包中http.Client结构用于实现HTTP客户端,因此无需借助第三方网络通信库...

  • HTTP 记录响应报文 ResponseRecorder

    背景 在返回响应报文到客户端时,需要保存整个记录。 Golang 标准库有实现:src/net/http/http...

  • net.http (服务端)

    golang的http服务包 , 包括服务端和客户端 这样就创建了一个http的Server. 真简单呢. 服务启...

  • grpc-go

    1,关于grpc-go golang 可以可以做grpc的服务端和客户端。 官网的文档: http://www.g...

  • 【Go快速入门】第二课 Go安装与卸载

    一、下载 http://golang.org/dl/[http://golang.org/dl/](需要科学上网才...

  • golang 单向 chan类型

    [TOC] golang 函数返回chan类型 在阅读kafka的golang 客户端代码sarama-clust...

  • golang http

    golang http http 挂载方法 Head 发送 HEAD 请求func Head(url string...

  • golang http

    DefaultServeMux 默认的路由器 ( ServeMux的实例,继承了Handler。 含有 patt...

  • Sugar - Golang的声明式Http客户端

    Sugar是一个Go语言编写的声明式Http客户端,提供了一些优雅的接口,目的是减少冗余的拼装代码。 没有比较就没...

网友评论

      本文标题:golang http 客户端

      本文链接:https://www.haomeiwen.com/subject/rudomrtx.html