golang·后端发起Get或POST请求

golang·后端发起Get或POST请求

发出Get请求:

//请求===================
    client := &http.Client{}
    resp, err := client.Get(url) //get请求链接
    if err != nil {
        log.Fatal(err)
    }
    jsons, err := ioutil.ReadAll(resp.Body) //筛出json
    if err != nil {
        fmt.Println("用户登陆get 异常err")
    }
    defer resp.Body.Close()
    //存储到结构体=============
    type Obj struct {
        Openid      string `json:"openid"`
        Session_key string `json:"session_key"`
    }
    var Objs Obj
    json.Unmarshal([]byte(jsons), &Objs)
    //json.Unmarshal([]byte(string(jsons)), &Objs)
    fmt.Println(Objs.Openid) //打印结果

返回 json

msg, _ := json.Marshal(Objs) //转换成json
writer.Write(msg) //返回值 必须先定义异常 _:=

POST请求

resp, err := http.Post("https://aip.baidu.com/",//请求地址
        "application/x-www-form-urlencoded",//请求头
        strings.NewReader("access_token="+access_token+"&text="+text),//请求内容
    )

    if err != nil {
        fmt.Println("请异常:",err)
    }

    defer resp.Body.Close()

    body, err := ioutil.ReadAll(resp.Body)
    if err != nil {
        fmt.Println("读取异常:",err)
    }
    fmt.Println(string(body)) //打印结果

httpPostForm 请求

func httpPostForm(text string) { //httpPostForm()
    access_token := "xxx27013614"
    posturl := "https://aip.baidu.com/"

    resp, err := http.PostForm(posturl, url.Values{"access_token": {access_token}, "text": {text}})
    if err != nil {
        fmt.Println("请异常:", err)
    }

    defer resp.Body.Close()

    body, err := ioutil.ReadAll(resp.Body)
    if err != nil {
        fmt.Println("读取异常:", err)
    }

    fmt.Println(string(body))
}
99 Views
分享你的喜爱
linwute
linwute

我要像梦一样自由,像大地一样宽容;
在艰辛放逐的路上,点亮生命的光芒;
我要像梦一样自由,像天空一样坚强;
在曲折蜿蜒的路上,体验生命的意义;

留下评论

您的电子邮箱地址不会被公开。